Recently, we asked the BuzzFeed Community which actors played a villain so perfectly that you can't unsee them as evil. We already got tons of great responses (if you're looking for Imelda Staunton, read that post first), so here are even more!
Be warned, there are a few big spoilers ahead, particularly for Big Little Lies and Sharp Objects!
1. Jason Isaacs as Colonel Tavington in The Patriot and other roles
2. Lena Headey as Cersei Lannister in Game of Thrones
3. Javier Bardem as Anton Chigurh in No Country for Old Men
4. Tom Felton as Draco Malfoy in Harry Potter
5. Zac Efron as Ted Bundy in Extremely Wicked, Shockingly Evil and Vile
6. Bradley Cooper as Sack in Wedding Crashers
7. Elaine Hendrix as Meredith Blake in The Parent Trap
8. Helena Bonham Carter as Bellatrix Lestrange in Harry Potter
9. Jack Gleeson as Joffrey in Game of Thrones
10. Sam Neill as Inspector Campbell in Peaky Blinders
11. Ann Dowd as Aunt Lydia in The Handmaid's Tale and other roles
12. Jon Bernthal as Shane in The Walking Dead
13. Denzel Washington as Alonzo Harris in Training Day
14. Andrew Scott as Moriarty in Sherlock
15. Kate Winslet as Jeanine in Divergent
16. Olivia Colman as the Godmother in Fleabag
17. Katie McGrath as Morgana in Merlin
18. Giancarlo Esposito as Gus Fring in Breaking Bad
19. Alexander Skarsgård as Perry in Big Little Lies
20. Louise Fletcher as Nurse Ratched in One Flew Over the Cuckoo's Nest
21. Eliza Scanlen as Amma in Sharp Objects
22. Alfie Allen as Theon Greyjoy in Game of Thrones and Iosef Tarasov in John Wick
23. J.K. Simmons as Vern Schillinger in Oz and as Terence in Whiplash
Submissions may have been edited for length or clarity.