The 5 Best (& 5 Worst) On-Screen Portrayals Of Superman Villains

No superhero has a greater rogues gallery than Batman, but Superman’s is a close second or third. As the world’s first superhero, naturally, he had the world’s first supervillains. From the intellectual match he finds in foes like Lex Luthor to the physical challenge he finds in enemies like Doomsday, the Man of Steel has faced some pretty fierce villains over the years.

RELATED: Every Superman Movie Ever, Ranked

There have also been a handful of different on-screen interpretations of the Superman character, which have led to various on-screen incarnations of those villains. Here are The 5 Best (And 5 Worst) On-Screen Portrayals Of Superman Villains.

10 Worst: Jesse Eisenberg as Lex Luthor

Jesse Eisenberg as Lex Luthor

It’s hard to tell if Jesse Eisenberg was even trying to play Lex Luthor in Batman v Superman, because his performance comes off as more of a rip-off of Heath Ledger’s portrayal of the Joker, and Lex Luthor and the Joker are two very different characters. The Joker is a madcap maniac obsessed with chaos, but Luthor is cold and calculating.

He should be played with a chillingly calm demeanor, but Eisenberg played him as a chuckling weirdo with a messy hairdo who let out a cute little giggle every five seconds. The role was miscast, mischaracterized, and generally just plain awful.

9 Best: Michael Shannon as General Zod

Michael Shannon is one of the most intense actors around, so it was no surprise when he made a frightening and sinister villain for the titular Kryptonian hero in Zack Snyder’s Man of Steel. The movie as a whole was not all that great, as it bungled Superman’s characterization and was way darker than Superman stories should ever be.

RELATED: 10 Ways To Fix Superman In The DCEU

But Shannon nailed General Zod, playing him as a violent maniac. The plot was a little silly – Kryptonians banishing him from Krypton as the planet was crumbling into nothingness, leaving him alive and well to hunt and kill Superman – but he was a strong villain.

8 Worst: Ciaran Hinds as Steppenwolf

Cairan Hinds as Steppenwolf in Justice League

Ciaran Hinds is a fine actor, and he gave the best performance he could as Steppenwolf (the forgettable B-list villain in Justice League who replaced Zack Snyder’s first choice: Darkseid), but the lacklustre CGI and terrible writing of this character let him down. Plus, the way Steppenwolf is portrayed in the notoriously reshot movie leaves a lot to be desired.

A supervillain is only as good as his evil plan, and it seems as though Steppenwolf has none. Whereas Thanos has a clear-cut plan that makes sense, as well as justifiable reasons for wanting to do it, Steppenwolf wants to dominate our world...just ‘cause. It’s pretty lame.

7 Best: Jon Cryer as Lex Luthor

When it was announced that Jon Cryer – best known as Duckie in Pretty in Pink and Alan Harper in Two and a Half Men – would be playing Lex Luthor in the CW’s Supergirl series, fans were skeptical. They didn’t think that a guy who was famous for playing an oversexed Charlie Sheen’s undersexed divorcee brother would be able to bring an appropriate ominousness to the role of Luthor.

However, within a single episode – that episode being “O Brother, Where Art Thou?” – Cryer proved those skeptics wrong. His Lex is condescending to his business associates, threatening to his enemies, and an all-round great villain.

6 Worst: Robert Vaughn as Ross Webster

Robert Vaughn in Superman III

The notoriously bad Superman III (better known as the one that gave Superman a sidekick played by Richard Pryor) doesn’t even use a villain from the comics. Think of the wealth of Superman villains that have yet to make it to the screen – Brainiac, Darkseid, Metallo – and by just the third movie, the producers decided to make up a generic evil billionaire called Ross Webster to be the bad guy.

Robert Vaughn is a reliably creepy actor who can play a mustache-twirling villain in his sleep, so he has no problem playing this one-dimensional role – the problem, unsurprisingly, is that the role is so one-dimensional, and he’s not even from the comics, so fans have no attachment to him.

5 Best: Gene Hackman as Lex Luthor

Although Gene Hackman refused to be bald for a lot of the movie and he brought an unnecessary degree of campiness to Superman’s ultimate foe, his Lex Luthor is still a comic book movie villain to remember. He was the bad guy in the film that started it all – the first major Hollywood superhero movie – and being the brilliant actor that he is, Hackman brought some serious weight to Luthor’s power and genuine menace to his line delivery.

It could’ve been a truly timeless performance if it wasn’t so eccentric, but it gets the job done, and it was made at a time when there was no template for superhero movies and no one had ever attempted to play an iconic supervillain in a major blockbuster, so we can cut Hackman a little slack.

4 Worst: Robin Atkin Downes as Doomsday

Doomsday Batman v Superman

The creature in Batman v Superman was never named on-screen as Doomsday, but let’s face it: it was Doomsday. Robin Atkin Downes did the motion-capture performance for the character – one of Superman’s greatest foes from the comics; one of the few physical challenges he’s ever faced – under some abysmal CGI and hacky writing.

Although Doomsday killed Superman in the movie’s climax as the Man of Steel sacrificed himself onto a Kryptonite blade, we didn’t feel any weight to it. The first villain to kill Superman on the big screen should’ve been a memorable one, but this version of Doomsday just wasn’t.

3 Best: Terence Stamp as General Zod

Terence Stamp (Zod) and Christopher Reeve in Superman II

Michael Shannon’s portrayal of General Zod in Man of Steel was pretty great – intense, menacing, powerful – but the definitive version will always be Terence Stamp in Richard Donner’s Superman II. The paradigm of hero and villain shakes up in an interesting way in terms of the plot as Superman accidentally releases Zod and his cronies from the Phantom Zone.

Like Tony Stark in Age of Ultron and, more recently, Spider-Man in Far From Home, Superman made his own mess to clean up. Heroes confronting their own mistakes via a stand-off with the villain always makes for a more fascinating dynamic.

2 Worst: Ben Affleck as Batman

Ben Affleck as Batman in Batman v Superman

No one ever expected Batman to appear in a Superman movie as the villain (or at all, frankly). In fact, Batman v Superman depicts Superman more as a Batman villain than the other way around, since the Bat has a personal vendetta with Supes following the destructive final battle in Man of Steel, which left many Wayne Enterprises employees dead or wounded.

RELATED: 5 Things Batfleck Got Right (& 5 It Got Wrong)

For all intents and purposes, Superman is the bad guy and Batman did nothing wrong. Except for using guns and killing people, his two big no-no’s in the comics that suddenly became his defining credo in the movie. The film was just a mess from start to finish.

1 Best: Kevin Spacey as Lex Luthor

Even before we knew how sinister he was in real life, Kevin Spacey could play a great villain. Whether he was playing a suburban dad fixated on his teenage daughter’s best friend in American Beauty or the last son of Krypton’s cueball arch-nemesis in Superman Returns, there was always something a bit off about him that kept you on the edge of your seat when you watched him perform any scene.

This, paired with an intense comic book knowledge from director Bryan Singer (who also faced #MeToo allegations – geez, there are a lot of sexual predators in Hollywood), made Spacey’s incarnation of Lex Luthor the one to beat.

NEXT: The 5 Best (& 5 Worst) On-Screen Portrayals Of Batman Villains

More in Lists