It’s a common enough trope in comic books – the good guys turn bad, the bad guys turn good; the good guys have been bad the whole time, but the bad guys, deep down, are really very nice. It should be no surprise that the actors who portray these heroes and villains should switch between roles through their career; it’s really just part of the process.

There are only so many actors who can play along with a comic book movie, and whether they play a superhero or a supervillain is just details. The community of comic book actors is fairly small and self-supporting, too; play a superhero in your youth, and you’re guaranteed a second paycheck down the road when you inevitably play the villain or wizened mentor (or both).

So which two-faced thespians have played both sides of the law? Read on and find 19 Actors Who’ve Played Both Superheroes And Villains In Movies.

19. Jim Carrey – Colonel Stars And Stripes/The Riddler

Jim Carrey Collage 19 Actors Whove Played Both Superheroes And Villains In Movies

Many of the actors on this list played the hero in their younger years, and turned to villainy as they grew older and wiser. Jim Carrey is the exception: the rubber-faced Canadian comedian put on the very tight green onesie of evil in 1995’s Batman Forever early in his career. He played the Riddler, a puzzling psychopath who allied with Tommy Lee Jones’ Two-Face to mind-control Gotham City. He cackled, he rhymed, he mailed fun dioramas to Bruce Wayne. It was a light-hearted and relatively harmless take on a Batman rogue.

Nearly twenty years later, though, Carrey decided to play the hero – sort of. He slipped into the camo fatigues of Colonel Stars And Stripes, one of Kick-Ass 2‘s hyper-violent vigilantes. With the help of his trusty murder-dog Eisenhower and a star-spangled baseball bat, he bludgeoned crime to death until the very end. His character had supposedly turned away from a life of crime to become a hero but… Considering his costume looks like a baggier version of the Riddler’s and his hair is exactly the same style, and he wears a mask just like he did in Batman Forever… well, we’ll let you draw your own conclusions.

18. Brandon Routh – Superman/Todd Ingram

Brandon Routh Collage 19 Actors Whove Played Both Superheroes And Villains In Movies

Brandon Routh had few entries in his filmography before becoming the most iconic superhero of them all in 2006’s Superman Returns. It was a smart idea at the time to cast a relative unknown in the role of Clark Kent; audiences wouldn’t enter the theatre with preconceived ideas about the actor in the tights. Superman Returns was by no means a bad movie, and many praised Kevin Spacey’s performance as Lex Luthor. Still, the film failed to revitalize the Superman franchise, and Routh had few projects to his name after the big-budget let-down.

That is, until 2010, when Edgar Wright cast Routh as the third (and most vegan) of Ramona’s evil exes in Scott Pilgrim vs. The World. As Todd Ingram, he was a seemingly unstoppable vegan foe for Scott until the latter tricked him into drinking half-and-half. His vegan powers drained, Todd was head-butted into so much loose change.

Routh can currently be seen as Ray Palmer, aka The Atom, on Arrow and Legends Of Tomorrow.

17. Josh Brolin – Jonah Hex/Thanos

Brolin Collage 19 Actors Whove Played Both Superheroes And Villains In Movies

Josh Brolin starred in 2010’s poorly-reviewed Jonah Hex, a supernatural Western based on the venerable DC comic book character. Despite a strong cast – Brolin himself, John Malkovich as the evil General Turnbull, and Michael Fassbender as Burke – the film couldn’t even make its budget back, and the franchise-to-be was dead for good. The character of Jonah Hex may have found new life, however, thanks to Legends Of Tomorrow – just without Brolin attached.

The strong-jawed Brolin was eventually cast as Thanos, the villain pulling the strings of the Marvel Cinematic Universe. We first got to see Brolin as the chair-loving purple man in Guardians Of The Galaxy. He didn’t really do much in the movie besides sit and berate Ronan, but we expect he’ll have a lot of scenery to chew in the upcoming Avengers: Infinity War. The film will finally bring Thanos into direct conflict with the Avengers, and we can’t wait to see all those square jaws in action together.

16. Hugo Weaving – V/The Red Skull

Hugo Weaving Collage 19 Actors Whove Played Both Superheroes And Villains In Movies

It’s not that we don’t like Huge Weaving’s face – it’s just that we like his voice even more! Weaving is no stranger to science fiction and fantasy – he was Agent Smith, after all, and Elrond – so it was natural for him step into comic book movies with V For Vendetta in 2005. He played the titular V, a masked man struggling against the tyranny of future Britain. He takes in a young Natalie Portman, shaves her head, and later explodes.

Then it came time for him to play one of Marvel’s greatest villains, the Red Skull, in Captain America: The First Avenger. Though he begins the movie as Johann Schmidt, his face is melted off by a cosmic polyhedron before too long, and he stomps all over Europe with Hydra in tow. Whether he enjoyed the role or not, he was an intimidating first villain for the newly-beefy Captain America to face. Whether or not he’ll return to the role remains to be seen.

15. Mickey Rourke – Marv/Whiplash

Mickey Rourke Collage 19 Actors Whove Played Both Superheroes And Villains In Movies

Mickey Rourke had been looking for a comeback for more than a decade by the time he was cast as Marv in Frank Miller and Robert Rodriguez’s Sin City. Marv was the standout character of the film; his intimidating size combined with his protective and gentle personality made him an immensely likable protagonist. He was defiant to the bitter end – so defiant, in fact, he returned in 2014’s Sin City: A Dame To Kill For.

Marv was only the first step in Rourke’s comeback run. A few years later he starred in The Wrestler, cementing his reputation as a talented actor with something to prove. He was eventually cast in Iron Man 2 to do battle with another actor recovering from his own career slump – Robert Downey Jr. Though Iron Man 2 didn’t set the world on fire, Rourke as Ivan Vanko was fun to watch. We don’t know why Whiplash had a cockatoo, but he did, and we loved him for it.

14. Terence Stamp – Stick/Zod

Terence Stamp Collage 19 Actors Whove Played Both Superheroes And Villains In Movies

Terence Stamp had had a long career before he appeared appeared briefly in 1978’s Superman as the insurrectionist General Zod. In 1980, he returned for the sequel, this time as the central antagonist to Christopher Reeve’s Superman. Alongside Ursa and Non, Zod brought Earth to its knees before being returned to the Phantom Zone by Superman. As an iconic, charismatic villain in one of the most well-loved superhero films of all time, Stamp earned himself a great deal of geek cred.

Luckily for him, most people don’t remember 2005’s Elektra, starring Jennifer Garner as the titular ninja heroine. In the film, Stamp plays Stick, a blind martial artist who revives Garner’s Elektra after her apparent death in 2003’s Daredevil. Orchestrating events to test Elektra’s compassion and fighting abilities, he toed the line between hero and villain. The Stick played by Stamp in the movie was similar in temperament to the Stick more familiar to modern Daredevil fans, though the story was largely original.

13. Idris Elba – Heimdall/Roque

Idris Elba Collage 19 Actors Whove Played Both Superheroes And Villains In Movies

Idris Elba is one of the few actors on the list who started off as a comic book villain before becoming a hero. As Roque, he was a member of The Losers, a gang of United States Special Forces operatives in the film of the same name. Based on a story from Vertigo Comics, the film sees Roque eventually turn on his teammates, attempting to steal a plane and make off with the goods. He’s killed by an exploding motorcycle to the face.

Elba would return to comic book movies, however, as Heimdall in Thor. Heimdall keeps watch over the Nine Realms, and guards the Bifrost Bridge and Asgard from intrusion. He can see all, for his eyes are orange. As Elba’s star has risen, so has Heimdall’s presence in the Marvel Cinematic Universe; his role was expanded slightly in Thor: The Dark World, he had a cameo in Age Of Ultron, and he will reappear in the upcoming Thor: Ragnarok.

12. Ray Stevenson – The Punisher/Firefly

Ray Stevenson Collage 19 Actors Whove Played Both Superheroes And Villains In Movies

Not the first to play The Punisher and not the last, Ray Stevenson donned the skull shirt and bandoliers in 2008’s Punisher: War Zone. Though panned by critics at the time, the film has attained some cult success for its laughably over-the-top violence and style. As Frank Castle, Stevenson wasn’t really one to chuckle, which is probably why he was so happy to take on the more giddy Firefly in G.I. Joe: Retaliation.

Firefly was COBRA’s happy-go-lucky demolitions expert, a life-loving rascal who could blow stuff up real good. He had an endless supply of tiny, robotic insects he would send out to explode people. In the end, COBRA’s plan was foiled and Firefly was hoisted by his own petard. Trying to send one of his firefly drones after Roadblock, he discovers too late that the triggering device has been swiped from him. With the Punisher mantle handed to Jon Bernthal and Firefly currently a crater, it doesn’t look like Stevenson will be returning to either role any time soon.

All the same, we’ve also gotten to see Stevenson play Volstagg in the two Thor films, and he’ll be reprising the role in next year’s Thor: Ragnarok.

12. Liam Neeson – Darkman/Ra’s al Ghul

Liam Neeson Collage 19 Actors Whove Played Both Superheroes And Villains In Movies

Coming off the success of the Evil Dead movies, Sam Raimi was approached by Hollywood to make a superhero feature film. Unable to take on Batman or The Shadow, he eventually created the character Darkman out of whole cloth, and cast Liam Neeson as the disfigured hero. Neeson’s character, Peyton Westlake, is a scientist left for dead after an attack. Using a synthetic skin to cover his burns, he can impersonate anyone, and hunts down the men responsible for his predicament. Darkman would go on to achieve cult status, earning love for its dedication to practical effects, gore, and Liam Neeson’s performance.

While Raimi eventually got the chance to work with a pre-existing superhero with Spider-Man, it was Neeson who got the Batman role. Appearing as Henri Ducard, and then as classic Bat-villain Ra’s al Ghul, Neeson went toe-to-toe with Christian Bale’s Batman.  Batman Begins was a huge success, both critically and commercially, and was followed by two sequels – the latter of which saw Neeson reprise his role in flashbacks.

11. Scarlett Johansson – Black Widow/Silken Floss

Scarlett Johansson Collage 19 Actors Whove Played Both Superheroes And Villains In Movies

Scarlett Johansson is no stranger to comic book movies. One of her earliest hits was the graphic novel-inspired indie film Ghost World, in which she starred alongside Thora Birch. A meteoric rise to fame later, she was cast as Natasha Romanoff, the Black Widow, in Iron Man 2. A S.H.I.E.L.D. agent with a dark past, she has appeared in numerous Marvel movies since then, including as a core member of the world-saving Avengers. There have been talks of a Black Widow solo film on and off for years, and it looks like one might finally be happening.

In 2008’s The Spirit, Johansson played Silken Floss, the primary henchwoman to Samuel L. Jackson’s Octopus. Floss was an accomplished nuclear physicist, as well as biologist, and possibly surgeon, who was helping the Octopus become immortal. Her goals were her own: she was in it to have fun, look good, and pay off her PhD.

10. Chris Evans – Human Torch/Captain America/Lucas Lee

Chris Evans Collage 19 Actors Whove Played Both Superheroes And Villains In Movies

Chris Evans has the distinction of being cast as two of Marvel’s superheroes, first as the Human Torch in 2005’s Fantastic Four and its sequel, and then as Captain America in 2011’s Captain America: The First Avenger. He’s been Steve Rogers ever since, with three “solo” movies to his name and both Avengers films. He’ll keep playing Steven Rogers for a while yet, with appearances due in the next two Avengers films, but whether he is still truly Captain America remains to be seen.

Just before donning the red, white, and blue body armor of justice, he played Jensen in 2010’s The Losers, and then Lucas Lee in Scott Pilgrim vs. The World. The second of Ramona Flower’s evil ex-boyfriends, Lucas was a huge action star with the ego, and the stunt doubles, to match. He was done in by his own hubris, taking a dare to “do a thingy on that rail“. Crashing to the ground at more than two hundred miles per hour, he managed to get the last laugh: he didn’t sign any autographs before he exploded into Canadian coinage.

8. Ryan Reynolds – Green Lantern/Deadpool/Evil Deadpool

Ryan Reynolds Collage 19 Actors Whove Played Both Superheroes And Villains In Movies

Ryan Reynolds really wanted to be Deadpool – he let everyone who was anyone know about it. He finally got the chance to play the red-suited assassin in 2008’s very badly received X-Men Origins: Wolverine. The merc with a mouth was de-mouthed, given laser eyes, and took his blade arms to his old buddy Wolverine, and no one really knew why.

Moving to DC, Reynolds then took on the ring and the green-screen suit of Green Lantern‘s Hal Jordan. Another flop, Reynolds himself would go on record as hating the Green Lantern process, and in particular the entirely CGI costume.

Only this year did Reynolds truly get his wish. Producing the project himself, he finally brought Deadpool to theater screens in a solo outing. The movie was an immense success, earning its budget back several times over despite its R rating. Now Deadpool 2 is on the way, and Reynolds can rest easy knowing he did justice to Marvel’s chattiest hero.

7. Adewale Akinnuoye-Adbage – Killer Croc/Kurse

Adewale Akinnuoye Adbage Collage 19 Actors Whove Played Both Superheroes And Villains In Movies

Adewale Akinnuoye-Adbage has been in two huge comic book movies, but you would be forgiven for not recognizing his face. Despite being an expressive actor, in both Thor: The Dark World and Suicide Squad, it was his impressive physique and combat skills that were on display, as his face was completely covered either by a mask or layers of special effects makeup.

Playing Kurse in Dark World, Akinnuoye-Adbage was the primary henchman to Malekith, the leader of the dark elves in their assault on Asgard. He met his end doing battle with Thor and Loki. Though he seemingly stabbed the latter through the chest, the trickster god got the best of him and detonated a black hole grenade on his belt, crushing him down to the quantum level.

In this year’s Suicide Squad, Akinnuoye-Adbage played Killer Croc, a villain-protagonist recruited to join Task Force X. Despite having few lines, Croc’s presence was memorable, and he will likely make a comeback in Suicide Squad 2.

6. Samuel L. Jackson – Nick Fury/Frozone/The Octopus/Valentine

Samuel L. Jackson Collage 19 Actors Whove Played Both Superheroes And Villains In Movies

Samuel L. Jackson is one of the most successful and prolific actors of the past few decades, with over a hundred credits to his name. Along the way, he’s dipped his toes in superhero and comic fare more than once, playing heroes and villains.

He’s most known today as Nick Fury of the Avengers, the former director of S.H.I.E.L.D. who brought Earth’s mightiest heroes together to fight Loki. In Marvel’s Ultimate universe, Nick Fury was re-designed to resemble Jackson and, in a case of art imitating art imitating art, Jackson was the first pick to play the super-spy in Marvel’s Cinematic Universe.

Before he ever donned the eyepatch and turtleneck, Jackson voiced the character Frozone in Pixar’s The Incredibles. The best friend and crime fighting partner of Mr. Incredible, Frozone joined the super-family and did battle with Syndrome in the film’s climax. He’s expected to return in the sequel in 2019.

Jackson hasn’t always played the hero, though – he played the main antagonist, The Octopus, in the ill-received The Spirit, and the hemophobic mastermind Richmond Valentine in 2014’s Kingsman: The Secret Service.

5. Cara Delevingne – Laureline/Enchantress

Cara Delavingne Collage 19 Actors Whove Played Both Superheroes And Villains In Movies

Cara Delevingne is only beginning her rise to fame. The English model-turned-actress broke out with 2015’s Paper Towns, and since then has signed on to a variety of roles. This year she played June Moone in Suicide Squad, as well as Enchantress, the magical, gyrating being possessing her. Critics generally found her villain underwhelming, and it remains to be seen if she’ll return for the sequel, possessed by a witch or not.

Next year, though, Delevingne will be starring alongside Dane Dehaan in Valerian And The City Of A Thousand Planets. Based on the French comic book series Valérian et Laureline, the film sees Valerian (Dehaan) and Laureline (Delevingne) as government operatives charged with maintaining order throughout the universe. The sci-fi epic is being directed by Luc Besson of The Fifth Element, and the buzz surrounding it has been positive so far. The movie comes out on July 21st, 2017.

4. J.K. Simmons – Commissioner Gordon/J. Jonah Jameson

JK Simmons Collage 19 Actors Whove Played Both Superheroes And Villains In Movies

Jonathan Kimble “J.K.” Simmons is arguably one of the best and more recognizable actors working today. He’s played cops and criminals, loving dads and vicious music teachers. He’s lent his memorable voice and fast-paced patter to a number of projects, including BoJack Horseman, Gravity Falls, and Zootopia – not to mention playing Cave “We’re Done Here” Johnson in Portal 2. Among comic book fans, he may be best known as J. Jonah Jameson in Sam Raimi’s Spider-Man. Not your typical sort of villain, the gruff-voiced, cigar-chomping newspaper editor did everything in his power to slander Spider-Man. Simmons captured the role of Jameson so perfectly that Mark “Web” Webb’s The Amazing Spider-Man didn’t even try to re-cast him.

Next year, Simmons will play Gotham City’s number one non-vigilante crime fighter, Commissioner James “Jim” Gordon, in Zak Snyder’s Justice League. He’ll then make an appearance in Ben Affleck’s solo Batman outing, and it looks like Just Kidding Simmons may be a part of DC’s Extended Universe for a while yet.

3. Karl Urban – Dredd/Skurge

Karl Urban Collage 19 Actors Whove Played Both Superheroes And Villains In Movies

In 2012’s Dredd, Karl Urban wore a scowl so permanent you’d be forgiven if you thought it prosthetic. Urban earned accolades for capturing the iconic Judge’s demeanor. In the film, Judge Dredd and his psychic protégée Judge Anderson storm the Peach Trees arcology in order to shut down production on the new street drug Slo-Mo, and escape with their lives while they’re at it. Dredd was a critical success but a financial disappointment, with plans for a sequel on hold indefinitely.

Next year, Urban returns to comic book movies with Thor: Ragnarok, this time playing the villain Skurge. Wielding a magical double-bladed battle axe, Skurge is an evil Asgardian frequently appearing in schemes involving Marvel’s Enchantress and Loki. From what we know of the film, he may be more of a henchman to Jeff Goldblum’s Grandmaster or Cate Blanchett’s Hela. The Taiki Waititi-directed Thor: Ragnarok premieres on November 17, 2017, and also stars Chris Hemsworth, Tom Hiddleston, Ruffles, and Idris Elba.

2. Michael B. Jordan – Human Torch/Erik Killmonger

Michael B. Jordan Collage 19 Actors Whove Played Both Superheroes And Villains In Movies

The immensely talented Michael B. Jordan got his start in 2009, starring as a high school quarterback in Friday Night Lights. Since then, he’s taken on a number of challenging roles, such as Oscar Grant in Fruitvale Station and Adonis Creed in the acclaimed Rocky sequel/spin-off Creed. In 2015, he played the Human Torch in the Razzie-winning Fantastic Four. The film may have tanked, but Jordan’s reputation wasn’t hurt – he has since been cast in Marvel’s upcoming Black Panther as Erik Killmonger.

In the comics, Killmonger, born N’Jadaka, was a native of Wakanda, and an expert fighter. Exiled from his home country by King T’Challa, aka Black Panther, Killmonger changed his name, studied, and vowed to return and avenge himself against the leader of his country. He was nearly successful; while Black Panther was in America with the Avengers, Killmonger staged a coup. He was eventually defeated and killed (until he could be resurrected again and again, because this is comics).

Details on Marvel’s Black Panther are sparse, so we’ll have to wait until 2018 to find out how the story translates from comic book to screen.

1. Michael Keaton – Batman/The Vulture

Michael Keaton Collage 19 Actors Whove Played Both Superheroes And Villains In Movies

Primarily known as a comedic actor, Michael Keaton was no one’s first choice to play Batman back in the late ’80s. Still, he proved himself and went on to portray the fearsome vigilante in both Batman and Batman Returns. His version of the Dark Knight was a little more trigger-happy than what we’re used to today, but he still remains one of our favorite superhero actors ever.

His career hit a slump in the late ’90s. Arguably, he only fully recovered when he played the self-referential Riggan Thomson in Birdman, an actor best known for playing a winged superhero trying to build a serious career. He was nominated for an Academy Award for his performance, and won a Golden Globe. The next year he starred in Spotlight, another Oscar-winning picture. Currently on the upswing, Keaton will play the Vulture in next year’s Spider-Man: Homecoming, officially transferring from DC to the Marvel Cinematic Universe.

Is there anyone we missed? Let us know in the comments!

  • Ad Free Browsing
  • Over 10,000 Videos!
  • All in 1 Access
  • Join For Free!
GO PREMIUM WITH SCREENRANT
Go Premium!

More Videos