Actors who do a good job of playing evil or dark characters

  Single Performance

Bolaji Badejo – Alien (1979)

Henry Fonda – Once Upon a Time in the West (1969)

Margaret Hamilton - The Wizard of Oz (1939)

Mercedes McCambridge – The Exorcist (1973) – voice only

Ronald Reagan – The Killers (1964)

Andrew Robinson – Dirty Harry (1971)

Multiple Roles

Michael Dunn

Boris Karloff

Tatsuya Nakadai

Conrad Veidt

Richard Widmark

Terence Stamp as General Zod in Superman and Superman III

Ian McDiarmid as Senator Palpatine/Darth Sidious in Star Wars

Ronny Cox and Kurtwood Smith in Robocop

Nailed it in One!

Terrifying Grandpa!

I’ll toss out Guy Pearce. Scary dude.

Good call on that. One of my favorites and he was so evil.

How am I the first person to mention Willem Defoe?

If we’re including single performances, a couple of really iconic ones are Javier Bardem in No Country For Old Men and Anthony Hopkins in The Silence of the Lambs.

John Goodman.

Yes, he’s the affable, goofy guy in so many movies, including all voice work.

But when he’s playing evil, he’s terrifying.

Why has Anthony Hopkins as Hannibal Lecter not been mentioned yet?

Since single performances are eligible, I’ll go with Javier Bardem as Anton Chigurh in No Country for Old Men.

And yet in the 2018 miniseries Waco (and its 2023 sequel) he was completely convincing as the principled guy deeply troubled by FBI lapses and bad decisions.

Yes, he’s reliably scary. Yet he was utterly sympathetic as the leading man in both Brainstorm and The Dead Zone, among others. And his SNL performances are those of a sweet guy who’s pretty close to being a comic genius.

But see him as Michael Caine’s butler in Dirty Rotten Scoundrels and you’d swear he’s a specialist in playing patient and kind guys.

These people have range.

Another who comes to mind is Cate Blanchett. I haven’t seen her Evil Stepmother in the 2015 live-action Cinderella but she got some good notices. And of course she was extremely evil in the third Thor movie.

Christoph Waltz.

Danny Trejo
Raymond Cruz (Tuco Salamanca in Breaking Bad)
Mark Margolis (Hector Salamanca in Breaking Bad)

Other than 10 cloverfield lane, what other movies has he played a villain? He was a good villian in that film.

James Gandolfini
Tony Sirico
Michael Imperioli
Dominic Chianese
Dan Grimaldi
Vincent Curatola
Frank Vincent
Joe Pantoliano

Basically, most of the male cast of The Sopranos.

Sure was! Very frightening. I had no idea he had that in him.

I’m surprised I’m the first to mention Hugo Weaving.

Barton Fink and O Brother Where Art Thou. The Coen Brothers bring out something in him.

He was a villain in Revenge of the Nerds, Raising Arizona, and O Brother, Where Art Thou? and arguably Community.

Jesse Plemons, the dude who asked “what kind of Americans are you?” in Civil War. He also had a memorable role in Breaking Bad.

You might not recognize the name Richard Brake but he was in The Mandalorian as an Imperial officer with a Southern accent. Bill Burr shot him. Brake also appears in Mayor of Kingstown as the leader of a white supremacist gang. He’s believable enough in that role to make me hope he’s nothing like that in real life. Edit: apparently he was the Night King on Game of Thrones too.

Billy Connolly, who is mostly known for comedy, was fantastic as a badass assassin in The Boondock Saints. Although apparently the reason why he is smoking a cigar in one particular scene (“what if it was one guy with six guns?”) was because he couldn’t keep a smile off his face.

Its kind of tangentially related to this topic but the actor Chris Pratt is known for playing goofball characters in comedies.

But in the 2019 movie The Kid he grew a beard and played a pretty scary villain. Its always nice when a character known for light hearted, goofball comedy can play an evil character so well.