Create a free profile to get unlimited access to exclusive videos, sweepstakes, and more!
Which MCU movie has the best villains? All 27 films, ranked by their bad guys
Do bad guys make for a good movie? Sometimes!
Every Marvel fan has their own opinion on what the best and worst movies in the MCU are. Chances are you do, if you’re reading this. You also probably have a list of the best and worst villains in the MCU. But, what movies have the best villain, as a whole?
Sometimes a good villain is stuck in a bad movie, and other times the strength of the villains alone elevates what would be a middling exercise in superheroics. We’re ranking all 27 movies in the Marvel Cinematic Universe by their villains. Do the villains — including the lesser and side-villains — work as characters on their own? How important are they to the success of the movie, both in terms of the plot and the overall tone and vibe of the film? In other words, if you want to watch a Marvel movie for the bad guys, which is the best bang for your buck?
27. Thor: The Dark World (Malekith, Kurse, Loki)
The second Thor movie frequently occupies the bottom slot of MCU movie rankings, a placing that is perhaps too harsh. It’s hardly the franchise’s best, but the climactic battle with the portals is awful fun. Still, it’s hard to make a case that The Dark World doesn’t feature the MCU’s weakest slate of villains. Even amongst the many varieties of faceless armies of alien villains in the MCU, the Dark Elves are especially bland and Christopher Eccleston's Malekith only barely feels like an individual character rather than just another Dark Elf. His right-hand man, Kurse, is nominally more memorable because he turns into a big monster. Loki, normally one of the MCU’s best villains, makes less of an impact here because he’s just doing the same dance he did in Thor and Avengers again. His mischief and double-crosses are more exhausting than exciting.
26. The Incredible Hulk (Abomination, “Thunderbolt” Ross)
It’s cool when the Hulk has another Hulk-sized monster to punch, and the Abomination delivers on this front, I guess. Their final battle in Harlem is a decent duel even if most of The Incredible Hulk doesn’t really hold up, special effects included. But, Emil Blonsky, though adequately played by Tim Roth, doesn’t offer much as an actual villain. He doesn’t have a real goal or stakes beyond feeling inferior to the Hulk and chasing the rush of a watered-down super-serum, which doesn’t exactly make for a compelling villain.
William Hurt’s “Thunderbolt” Ross is a little too petty to be a great villain, thought it’s nice to see him pop up later in later Avengers movies as a foil. .
25. Captain Marvel (Yon-Rogg)
Talos, the shape-shifting Skrull played by the great Ben Mendelsohn, is a wonderful character. A wry, salty, and exasperated alien leader. Unfortunately for the purposes of this ranking, he is not actually Captain Marvel’s villain. Instead, Jude Law’s Yon-Rogg — a Kree who is introduced as Carol’s mentor but revealed to have been lying to her the whole time — is the baddie. Problem is that Yon-Rogg is less of a character than he is a twist, a conniver who isn’t smarmy enough to be memorable beyond his role in Carol’s journey of self-discovery. Because Captain Marvel keeps Carol (and the audience) in the dark about her past and Yon-Rogg’s truth, he never gets a chance to distinguish himself as a villain.
24. Ant-Man (Yellowjacket)
Yellowjacket, played by an increasingly-unhinged Cory Stoll, feels like a throwback to an earlier era of superhero movies. His grand plan (flooding the arms market with shrinking super-soldiers) isn’t all that grand in the scheme of things, and he’s mostly just mad that his mentor, Hank Pym, did him dirty. He’s just a bad guy, and that’s fine for Ant-Man, a movie with charmingly modest stakes. It’s hard to be too upset about a villain who makes his final stand riding Thomas the Tank Engine. Not every villain needs to be the Baddest Villain Ever, and by not trying too hard to be bad, Ant-Man’s villain is pretty good.
23. Black Widow (Taskmaster, Dreykov)
Black Widow’s villains are the right duo for the movie, a superhero take on a James Bond-esque spy story. Taskmaster is the brawn and Dreykov is the brains. The two fulfill their roles admirably, with Taskmaster proving that she is more than a match for Black Widow and Dreykov being the right mix of powerfully smarmy and infuriatingly pathetic.
They just aren’t especially memorable in the pantheon of MCU villains, as Dreykov is a nondescript bureaucrat-type who doesn’t appear until the last act and Taskmaster is revealed to be a brainwashed victim, not an outright villain.
22. Captain America: The First Avenger (Red Skull, Armin Zola)
Hugo Weaving’s Johann Shmidt is a fitting foe to Steve Rogers, as the Red Skull is a warped mirror of Captain America. It’s just that the ceiling is pretty low when we’re dealing with a Nazi who is more evil than Hitler but conveys that evilness in more popcorn-friendly ways than a film dealing with true WWII horrors would. Not that anybody is asking Captain America to be Schindler's List — that would be awful — but without the specifics of Nazi villainy, any German WWII baddie is going to come across as somewhat generic. (Armin Zola will make another showing in the MCU in a new form, one that helps earn his repeat appearance a much higher placing.)
21. Doctor Strange (Kaecilius, Dormammu)
By the end of the movie, Dormammu is more of a puzzle to be solved than a villain to be defeated, and Doctor Strange’s novel way of besting the baddie (trapping them in a time loop that ends in Strange’s death over and over again) is a refreshing change of pace from most other final showdowns in the MCU. Dormammu is interesting while Kaecilius fulfills the role of the more-typical human foil to the hero. Kaecilius might be somewhat generic were it not for the fact that he’s played by Mads Mikkelsen, who just oozes some sort of sinister allure even when saddled with a lightly underbaked role like this.
20. Iron Man 2 (Justin Hammer, Ivan Vanko)
Iron Man 2 is not a widely beloved MCU movie, but Sam Rockwell’s Justin Hammer is an incredible villain. He’s basically what Tony Stark, Marvel’s first hero, would be if Tony Stark just totally sucked. He lacks his rival’s skill, morals, tact, and charisma, yet he thinks he’s the coolest guy at school. Justin Hammer is so self-assured that it’s a delight to see him be in out of his depth even when his plans are going perfectly. Ivan Vanko is harder to defend as a villain but have you considered the way that Mickey Rourke says “I want my bird?” That’s worth at least a middle-of-the-pack ranking right there.
19. Iron Man 3 (The Mandarin, Aldrich Killian, Maya Hansen)
Iron Man 3 director Shane Black revealed that Rebecca Hall’s Maya Hansen was originally going to be the threequel’s main villain (which would have made her the first propper female villain in the franchise.) However, those plans were scrapped because executives were worried that toys of a female villain wouldn’t sell as well as a male villain would (sigh). That’s a shame, because her connections to Tony Stark (and the undeniable spark between them) would’ve made for a more compelling villain than Aldrich Killian, who mostly just seems like some guy — and not because he’s played by Guy Pierce, who is fine, but because he’s underwhelming compared to Maya’s charisma and the pomp of the pre-reveal Mandarin.
The Trevor Slattery twist is brilliant storytelling, though for our purposes it muddles the water on whether you can really call the Mandarin a great villain. He’s just “an actor,” after all.
18. Eternals (The Celestials, The Deviants, Kro, Ikarus)
Eternals was not a successful movie, critically or commercially, but it’s admirable for the ways it attempted to do things differently than a typical MCU movie. Unfortunately, though, the villains we’re introduced to at the start are among the most boring and nondescript the franchise has ever given us. The Deviants? Who cares? Who is Kro and why does he look like he’s pushing the limits of what an Xbox 360 can do?
However, the real villains of Eternals, the godlike Celestials and one of our presumed heroes, Ikarus, are interesting. The Celestials’ cosmic scope makes the morality of their plan hard to parse, and you can understand why Ikarus (and some of the other Celestials) might not want to go against their will, even if it makes them the bad guy. Ikarus' heel turn also flips the script on what we expect from a Superman proxy, and watching his family fight against his unstoppable power feels intense and dramatic. Eternals has good villains, it just spends a long time on some incredibly lame red herrings before it gets around to revealing the good stuff.
17. Avengers: Age of Ultron (Ultron, Ulysses Klaue, Scarlet Witch, Quicksilver, Baron Strucker)
Age of Ultron is overstuffed as a movie, especially when Thor just kind of leaves the plot to go awkwardly set up another, more or less unrelated movie for a long chunk of the film. It’s a shame that James Spader’s Ultron was kind of wasted in the muddled mess that was the second Avengers, but he’s a good villain. Intimidating, smarmy, maybe just a touch too funny. He’s got personality, which is a hallmark of a good villain. Age of Ultron’s other villains — Quicksilver and Scarlet Witch — work better as heroes than they do as baddies, but they’re fine thorns in the Avengers’ sides before the flip sides. Ulysses Klaue makes his first appearance here, too, and Andy Serkis brings some great dirtbag energy to the role. Rounding out Age of Ultron’s pretty good crop of villains is Baron Strucker, who doesn’t do much besides surrender instantly, which is a pretty funny bit.
16. The Avengers (Loki, The Other, the Chitauri)
If Loki descended into villainy in Thor and started redeeming himself on the path to antiheroship in subsequent Thor movies (taking one step back for every two steps forward), then The Avengers represents him at his most openly villainous. He’s still ultimately floundering because he’s Loki, but he’s armed with a powerful legion of alien fighters and a mind-controlling staff, ready to cause chaos. The heroes of the MCU needed a great villain to first unite them, and Loki, who had demonstrated what he might be capable of in his preview appearance, really leveled up for The Avengers and rose to the occasion.
15. Spider-Man: No Way Home (Green Goblin, Doctor Octopus, Electro, Sandman, Lizard)
Remember: This is a ranking of MCU villains, which is why Spider-Man: Now Way Home is not at the top of the pack. Willem Dafoe’s Green Goblin and Alfred Molina’s Doc Ock are all-time superhero movie villains, but they’re at their best in Spider-Man and Spider-Man 2. They’re guests in the MCU, deprived of the full arc and pathos of their villainy. The pair are still good bad guys, don't get me wrong, just not nearly as good.
Doc Ock has a little bit less to do and his rushed, Stark-tech enabled redemption robs him of some of his tragic power as a character, but Dafoe’s Goblin is a reminder that all the CGI and special effects in the world can’t dazzle as much as acting can. The deceptively simple way he contorts his face into a ghoulish grin and drops his voice into an evil register when he goes full Goblin cements him as a top-tier MCU villain, and he hurts our hero more than most villains could ever dream of.
The other three villains, from Spider-Man 3, Amazing Spider-Man, and Amazing Spider-Man 2, are basically filler. Sandman’s characterization makes little sense and you get the impression that both he and the Lizard are CGI monsters because Thomas Haden Church and Rhys Ifans couldn’t be bothered to come to the set for more than an afternoon. Electro gets a makeover that’s aesthetically better, but he doesn’t do much beyond being literally power-hungry. No Way Home has good villains — one is even great — it’s just that they’re borrowed from other movies and missing crucial context.
14. Spider-Man: Far From Home (Mysterio)
Mysterio is a classic Spider-Man villain. If you had a passing knowledge of Spidey going into Far From Home you probably knew this. And yet, the idea of Mysterio as an interdimensional hero, played by Jake Gyllenhaal, was oddly convincing. He’s charming and nice and just about the only adult in Peter’s life who will listen to him and take his concerns seriously now that Tony Stark is dead. That makes it such a killer reveal when Quentin Beck drops the facade and reveals he’s just another disgruntled ex-Stark employee whose friendship (and superpowers) are all just an act. We’ve seen that the best Spider-Man villains are the ones that are the closest to him. Mysterio inverts this by feigning closeness.
13. Iron Man (Obadiah Stane, Raza)
The MCU’s first villain wasn’t the franchise’s best, but Jeff Bridges’ Obadiah Stane was a great start.
Tony Stark’s mentor-turned-betrayer has many traits that would later help form future MCU bad guys. He’s charming, he has a deep connection with the hero, and he’s brought down by his own hubris. If Raza, the terrorist leader, is Iron Man’s physical threat, Obadiah is the emotional one. The final fight, once he becomes Iron Monger, is underwhelming by current-day MCU standards, but that’s almost beside the point: Tony’s back and forth with his first villain sets up his entire character — and the tone of the MCU going forward. Also, Bridges yells “...WITH A BOX OF SCRAPS!” and that’s just great stuff right there.
12. Ant-Man and the Wasp (Ghost, Goliath, Sonny Burch)
The supervillain in the Ant-Man sequel, Ghost, has a pretty cool power set. She fades in and out of tangibility while battling two heroes who can shrink and grow in an instant. It makes for one of the most visually interesting and dynamic hero-villain showdowns in the franchise, and Ghost’s backstory as a victim rather than a malicious force makes her a compelling character — a kinder sort of villain for one of the MCU’s lighter franchises. But we’re not really here to talk about Ant-Man and the Wasp’s supervillain. We’re here to praise the film’s normal villain, Walton Goggins’ Sonny Burch. He’s a two-bit criminal arms dealer who is more of a dandy than he is intimidating and he’s wildly out of place sticking his nose into Ant-Man’s plot. He’s incredible. Sonny is about the closest the MCU has to a “regular guy” and it makes Ant-Man and the Wasp that much more engaging to see a normal criminal be totally out of his depth but still trying his darndest.
11. Guardians of the Galaxy (Ronan the Accuser, Yondu, Korath, Thanos)
Lee Pace’s Ronan the Accuser rarely tops lists of the best MCU villains, and that’s understandable. He’s somewhat one-note, an overly self-serious alien conqueror. Yet it’s that put-on regality and intensity — he’s literally introduced getting his garb ritualistically adorned — that makes him the perfect villain for Guardians of the Galaxy.
This is an absurd group of characters, a once-obscure team whose membership includes a mean raccoon and a tree who can technically talk. Putting this silly team up against a villain who is so serious and full of themself is the ideal dynamic for the Guardians’ debut. Ronan is a villain, yes, but he’s also a straight man. Yondu, even though he allies with the Guardians at the end, is still a secondary antagonist and he’s a more complicated foe than Ronan, which helps make the world of GotG feel more nuanced and connected. GotG was also the first real extended look MCU viewers had with Thanos, and though he’s still more of a man-behind-the-curtain here, his presence adds stakes to the film while giving audiences a sense of what the lurking big bad is really like.
10. Captain America: Civil War (Baron Zemo, Crossbones)
The action of Captain America: Civil War comes from our beloved heroes fighting one another. There’s no “bad guy” in the epic airport fight. However, all of that infighting is the result of one man, Zemo, who finds ways to turn Earth’s Mightiest Heroes against one another using only his cunning. There aren’t many villains who were more successful than that. Crossbones, the film’s opening act villain, is the punch-throwing baddie of the movie. His face may have taken a hit since The Winter Solider, but his new costume’s pretty intimidating.
9. Avengers: Endgame (Thanos)
Endgame puts the heroes of the MCU up against their greatest challenge yet, but the majority of the film sees them battling an existential crisis of sorts against their own failings and traveling through time. It’s not until the last third, really, that they come face to face with a true villain; a version of Thanos from the past who travels to the present with all his military might. He’s a tremendous foe — haughty, incredibly powerful and able to single-handedly best three of the MCU’s mightiest heroes.
But if we’re ranking these movies by their villains it’s hard to give Endgame, which is largely a more inventive time-travel story, too high a spot just for the last third — especially considering that this younger, more brash iteration of Thanos is not quite as interesting (or successful) a character as the older version we see in Infinity War.
8. Thor (Loki, The Destroyer, Laufey)
It took the MCU a couple of movies to really get Thor right as a character. (The secret? Let Chris Hemsworth be funny). The God of Thunder isn’t fully formed in his debut appearance, but one of the best villains the MCU would ever have, Loki, is perfect right out of the gate.
The God of Mischief, played with a charmingly sad twinkle by Tom Hiddleston, has just the right level of menace. We understand that he is, at his core, an anxious and insecure little kid, but we also believe that he can — and will — do terrible things nonetheless. The Avengers would make Loki into a more outright villain while The Dark World, Ragnarok, and Infinity War would see him become more firmly a noble antihero (to say nothing of the Loki TV series), but his initial appearance as a complicated villain you feel earnestly bad for was a terrific introduction. Brother-against-brother… that’s Shakespearian right there.
Thor’s other villains, The Destroyer and the frost giant king Laufey, don’t have nearly as much going on but they’re important parts of the film. The former looks cool and gives Thor something to fight, while the latter has an icy menace and works pretty well as a red-herring villain.
7. Guardians of the Galaxy Vol. 2 (Ego the Living Planet, Ayesha, Taserface)
What makes Ego such a good villain is that, at first, you can’t help but like the guy. He saves the Guardians from Ayesha, he invites them to his pretty sweet pad, he’s funny, and he’s chill. What other Marvel villain would casually confirm that yes, they have a penis? As played by Kurt Russel, he’s almost so likable that you can almost get over the reveal that his ultimate goal is to consume all of the universe in his own likeness. It’s not until he mentions, with casual cruelty, that he put a fatal tumor in Peter Quill’s mom’s brain, that Star-Lord — and the audience — snap out of his thrall. GotG vol. 2’s other villains are really just plot complications when compared to Ego, but Ayesha is haughty fun and Taserface is a real A-hole. When he dies horribly right after somebody mocks his dumb name again? That’s the good stuff.
6. Thor: Ragnarok (Hela, The Grandmaster, Surtur, Skurge, Loki)
Despite being named after the literal end of the world in Norse myth (and climaxing with the destruction of Asgard) Taika Waititi’s Thor: Ragnarok is basically a comedy. The villains, then, are fittingly humorous.
Jeff Goldblum’s Grandmaster is bemused by his own tyranny and generally just wants to have a good time, while Surtur is an angry special dumb special effect who has one job (destroy Asgard) and he does it perfectly. Cate Blanchett’s Hela isn’t exactly a laugh-riot, but she’s bringing a level of high-camp menace to the proceedings. She’s having just a fantastic time as she smugly does some genocide against the Asgardian people and takes back what she’s believes is rightfully her. Charismatic but inhuman, she’s a great adversary to the most actualized version of Thor we’d seen in the MCU to this point.
5. Shang-Chi and the Legend of the 10 Rings (Wenwu, The Dweller in the Darkness, Razorfist, Death Dealer)
The Dweller in the Darkness is one of the lamest Marvel villains. A Cthulhu-lite CGI monster who has no real backstory besides “being evil” and doesn’t do anything other than whisper and fight a CGI dragon, The Dweller in Darkness is more of an overblown set piece than an actual villain. So why is Shang-Chi No. 5 on this list? Because of Tony Leung, one of the greatest actors alive.
With just a look, Leung can convey all of Wenwu’s contradictions — his power, his simmering rage, his love of his family, his weariness of immorality, his grief, his madness. In lesser hands, Wenwu might not be a coherent character let alone one of the franchise’s best. But Leung carries the movie. (His two main henchmen, Razorfirst and Death Dealer, are a step up from the typical goons in these types of movies even if they’re not especially developed.)
4. Spider-Man: Homecoming (Vulture, Shocker, The Tinkerer)
Spider-Man: Homecoming is as much a teenage high school comedy in the style of John Hughes as it is a superhero blockbuster. That’s why, in order for it to really work — for Spider-Man and Peter to be equally invested — the villain needs to be both a superpowered threat and a relatable high school figure. And, on that latter front, what better, more intimidating “bad guy” is there than your first girlfriend’s father?
The reveal that Michael Keaton’s Vulture is Liz’s dad is one of the best twists in the MCU, and the subsequent scene with Adrian and Peter in the car, when the Vulture gives the “dad talk” with a gun casually but threateningly in hand, one of the tensest in the franchise. Spider-Man is one of Marvel’s most relatable characters, and Homecoming shines by giving him a relatable villain and a supervillain in one.
3. Captain America: The Winter Soldier (The Winter Soldier, Alexander Pierce, Batroc the Leaper, Crossbones, Hydra)
Captain America’s second outing is full of great villains. Batroc the Leaper kicks things off (literally) and though he’s not an especially important or deep villain, he does make for one of the MCU’s better fights as he flips and kicks his way around Captain America. Then you’ve got the titular Winter Soldier, who truly feels like a nigh-unstoppable force.
Cold and silent, he takes out Nick Fury without breaking a sweat and is more than a match for Black Widow and Cap — to say nothing of the emotional turmoil he’s subjecting Steve Rodgers to. Alexander Pierce, played by the great Robert Redford, seems at first like he’s the only reasonable guy working at S.H.I.E.L.D. other than Nick Fury, so it’s a nice rug-pull when we learn that he’s actually a Hydra extremist. The Winter Soldier also gives MCU fans the gift of elevating Senator Stern (the late Garry Shandling) from thorn-in-Iron Man’s side to outright villain when he whispers “hail Hydra.” See, this is why people don’t have any faith in government.
2. Black Panther (Killmonger, Ulysses Klaue)
Killmonger was almost right in his convictions. That’s what makes him such an incredible villain.
He comes to Wakanda and calls out T’Challa and generations of leaders before him for sitting in secluded safety while “two billion people all over the world who look like us whose lives are much harder, and Wakanda has the tools to liberate them all.” Killmonger is interjecting some very real, very heavy issues into what are typically fantastical superhero movies. With all the racism and injustice in the world, is anything Wakanda doing really heroic? To paraphrase another superhero's guiding line, where’s the great responsibility coming with this great power?
Killmonger is right that Wakanda should share its wealth and knowledge and help people (and Wakanda does indeed open up at the end of the movie, so he actually accomplished part of this goal, something few Marvel villains can boast.) However, that’s not all he wants. He wants an empire, he wants power, he wants to be the oppressor as much (if not more) than he wants to help the oppressed. He wants a new imperialism, undercutting the real good intentions of his goals. In the end, he’s less dissimilar from Ulysses Klaue than he would like to believe. It’s a tricky, thorny distinction with a lot of grey areas, and it’s what makes Black Panther more than just a superhero movie.
1. Infinity War (Thanos, Ebony Maw, Proxima Midnight, more)
From a purely results-based standpoint, Thanos is the best villain the MCU’s ever had.
Sure, the Avengers undid what he did after five years, but The Mad Titan successfully eliminated half of all life in the universe when he collected the Infinity Stones. That’s pretty incredible, but it’s not just Thanos’ body count that puts Infinity War at the top of our list of MCU films that have the best villains. Thanos is essentially the protagonist of Infinity War. After nearly a decade of sitting in the shadows, biding his time and getting hyped up by other movies, Thanos finally leaped into action, and the character we saw was maybe not what people expected. He was powerful, but somber, with a sense of duty. Thanos had been at this game a long time. This wasn’t just a villain jumping onto the scene to cause some evil, this was a culmination. Infinity War was part one of the culmination of the first version of the MCU as we knew it, and it’s fitting the villain carries the same weight. It’s part of the reason why the younger Endgame version of Thanos feels like a lesser character. That younger, cockier Thanos says he’s "inevitable", but Infinity War Thanos has actually done the work to come across that way.
Thanos’ henchmen are, by necessity, less interesting than Thanos himself, but special mention should go to Ebony Maw, who is a top-tier version of the cold and calculating right-hand man.
He doesn’t want to get his fingers dirty, but he doesn't need to when he can just wave his hand and embed force-needles in Doctor Strange’s skin.