Casting the perfect actor for each role is a crucial part of making any movie, but due to the high standards of comic book fans, it’s particularly important to choose the right actors to play icons from the pages of superhero comics.

RELATED: 5 Reasons Heath Ledger's Joker Is Still The Best Comic Book Movie Villain (& His 5 Closest Contenders)

Since they usually get it right, it’s impossible to imagine anyone besides Alfred Molina as Doctor Octopus or Jack Nicholson as Tim Burton’s Joker. But those actors were rarely the first choice for the part. These stars were once in the running to play iconic supervillains.

Nicolas Cage As The Green Goblin

Nicolas Cage and the Green Goblin

With just the right amount of cartoonish supervillainy, Willem Dafoe ended up being the perfect choice to play Norman Osborn in Sam Raimi’s initial Spider-Man movie. But Dafoe wasn’t the first choice.

According to The Guardian, the top choice for the Green Goblin in Raimi’s movie was Nicolas Cage, but he turned it down. John Malkovich was briefly attached before Dafoe came aboard.

Emma Roberts As Harley Quinn

Emma Roberts and Harley Quinn

Margot Robbie’s turn as Harley Quinn ended up being one of the few things in 2016’s Suicide Squad that actually worked. She’s since become one of the DCEU’s most beloved characters, but she wasn’t Warner Bros. top choice for the role.

Emma Roberts was initially offered the part, according to Business Insider, but she turned it down due to her commitments to Ryan Murphy’s satirical horror series Scream Queens on Fox.

Christopher Lee As Magneto

Count Dooku and Magneto

According to The Guardian, Christopher Lee was in the running for the role of Magneto in the X-Men series, but he lost out to his Lord of the Rings co-star Ian McKellen. McKellen ended up knocking the role out of the park, sharing impeccable chemistry with Patrick Stewart’s Charles Xavier.

Lee would’ve made a great Magneto, but he wasn’t short on villainous roles. Around the same time, he played Saruman in the aforementioned Lord of the Rings trilogy and Count Dooku in the Star Wars prequels.

Dustin Hoffman As The Penguin

Dustin Hoffman and the Penguin

Except for maybe Burgess Meredith, no actor in Hollywood was better-suited to the role of the Penguin than Danny DeVito. His stature, eccentricities, and sense of humor made him perfect for the subterranean villain of Batman Returns.

RELATED: 10 Things In Tim Burton's Batman Movies That Still Hold Up Today

However, according to E!, DeVito was just one name on a long list of possible casting choices. The studio’s top choice was the similarly diminutive Dustin Hoffman, but he turned it down.

Bryan Cranston As Lex Luthor

Walter White and Lex Luthor

Zack Snyder told Entertainment Weekly that he originally planned to cast Jesse Eisenberg as Jimmy Olsen in Batman v Superman to surprise audiences with an early death scene, but ended up casting him as an outside-the-box choice for Lex Luthor. Before choosing Eisenberg, Snyder had a shortlist of inside-the-box candidates for Lex.

Snyder explained, “We talked about the usual suspects [for Lex] that you would imagine; any actor who has been bald, probably. Bryan Cranston would have been great, right? And by the way, he’s an amazing actor. Can you imagine how different the movie would be?”

Christopher Walken As Doctor Octopus

Christopher Walken and Doctor Octopus

Alfred Molina was so well-suited to the role of Doctor Octopus in Spider-Man 2 that Marvel Studios hasn’t even bothered to recast the role for a new universe. Molina will reprise his role in Spider-Man: No Way Home, set to be released on December 17.

But Molina told TV Guide, “Sam Raimi saw a whole bunch of us character actors. It was me, Ed Harris, Chris Cooper, and Christopher Walken.”

Annette Bening As Catwoman

Annette Bening and Catwoman

According to The Hollywood Reporter, Annette Bening was the top choice to play Catwoman in Batman Returns. She even accepted the role and did a few costume tests during pre-production.

However, fate struck. Michelle Pfeiffer, who ended up getting the part (and making it iconic), explained, “[Catwoman] was Annette Bening. Then she became pregnant. The rest is history.”

Eddie Redmayne As Doctor Doom

Eddie Redmayne and Doctor Doom

Anybody who was considered for a role in 2015’s Fant4stic and didn’t land the part essentially dodged a bullet, because Josh Trank’s reboot was panned by critics and bombed at the box office.

RELATED: Fant4stic & 9 Other Comic Book Movies Whose Style Didn't Match The Source Material

Toby Kebbell ended up playing Doctor Doom in the failed reboot (until they replaced him with a CG crash test dummy in the third act, that is), but according to a casting shortlist published by The Wrap, Eddie Redmayne, Sam Riley, and Domhnall Gleeson were all considered to play Doom.

Daniel Day-Lewis As General Zod

Daniel Day-Lewis and General Zod

In an interview with MTV News earlier this year, Zack Snyder confirmed that he attempted to cast multiple Oscar winner Daniel Day-Lewis as General Zod in Man of Steel: “Yeah, we did talk. We had hoped that Daniel Day-Lewis would be interested in the movie.”

Day-Lewis is notoriously picky about the roles he takes, waiting for something iconic like Daniel Plainview or Abraham Lincoln to come along, and he’s since retired following 2017’s Phantom Thread, so any hope of seeing him in a cape has been dashed.

David Bowie As The Joker

David Bowie and the Joker

Jack Nicholson ended up bringing the perfect balance of manic hilarity and unnerving psychopathy to the Clown Prince of Crime in Tim Burton’s Batman, but before he was cast, the producers considered a bunch of big names for the part.

In a 1989 interview published in Cinefantastique, screenwriter Sam Hamm said that David Bowie, Tim Curry, Ray Liotta, John Lithgow, and James Woods were all considered to play the Joker before Nicholson was cast.

NEXT: 10 Actors Who Were Almost Cast As Bond Villains