The Quick Report

The 15 Worst Casting Choices Ever

Sometimes, Hollywood casts surprising actors in major roles and finds success in the unexpected performances. Other times, they just make mistakes and put the wrong person in a role. Here are the fifteen worst casting choices to ever stumble into a major movie.

Ben Affleck as Matt Murdock

20th Century Studios

Ben Affleck is a great actor, but he’s struggled mightily to ever put a compelling superhero onscreen. He was abysmal as Bruce Wayne in Batman vs. Superman, and his turn as Daredevil in the 2003 film of the same name was painfully bad. Affleck’s best off sticking with straightforward dramatic roles and leaving the tights at home.

Jai Courtney as Kyle Reese

Paramount Pictures

Terminator: Genisys is a very bad movie, and no amount of recasting could likely salvage the mess of a script it’s based on. However, Jai Courtney’s casting as Kyle Reese is emblematic of the film’s main issue. He’s just way too muscular and strong to be the brainy, adaptive Kyle Reese we met back in the first Terminator movie.

Topher Grace as Venom

Sony

Topher Grace is amazing in That 70s Show, but he just doesn’t have the hard edge required to play a villain like Venom. His role as Eddie Brock in Spider-Man 3 is one of the many bad things about that very awful movie, and it’s made much worse by the knowledge that Topher’s absence from the set of That 70s Show made its final season a complete drag, too.

Katie Holmes as Rachel Dawes

Warner Bros

Katie Holmes played Bruce Wayne’s childhood friend Rachel in Batman Begins, but she was replaced by Maggie Gyllenhaal in the sequel, The Dark Knight. And, no offense to Katie Holmes, but that’s a good thing. Gyllenhaal brings much more weight and dramatic depth to the character, correcting a major casting issue from the first film.

Kevin Costner as Robin Hood

Warner Bros

Kevin Costner’s role in Robin Hood: The Prince of Thieves was so legendarily bad that it led to a hilarious Mel Brooks parody, Robin Hood: Men in Tights. Costner couldn’t keep his English accent together and basically seemed out of his depth in the role.

Mark Wahlberg as Elliot Moore

20th Century Studios

The 2008 M. Night Shyamalan film The Happening is a rather poorly made film by all merits. However, one of the most notably out-of-place elements of the entire production is Mark Wahlberg, who plays protagonist Elliot Moore so poorly that he makes the thriller look more like a comedy. His confused expression and general lack of ambition make the entire film goofy to watch.

Jared Leto as The Joker

Warner Bros

Jared Leto is an accomplished actor and musician, but his role as the Joker in the 2016 Suicide Squad is one of the worst things happening in a very bad movie. His on-set antics were reportedly just as bad, with him mailing gross “gifts” to his castmates in the name of “method acting” as the depraved criminal he was supposed to be playing on-screen.

Cameron Diaz as Jenny Everdeane

Miramax

Cameron Diaz is a great performer, and there’s no doubt that the best film she’s ever been in is Gangs of New York. Unfortunately, she gets absolutely outshined by the likes of Daniel Day Lewis and Leonardo DiCaprio in the film. Her role as Jenny Everdeane might have been better played by an actress with more gravitas.

Sophia Coppola as Mary Corleone

Paramount

Sophia Coppola infamously portrayed Mary Corleone in the third Godfather movie, and it’s pretty obvious that she’s out of her league. She’s the director’s daughter in a movie full of some of the best actors and actresses to ever appear in front of a camera, and, frankly, it’s embarrassing. Francis Ford Coppola should have known better than to cast his daughter in this production.

Russel Crowe as Javert

Universal

With no offense meant to Russel Crowe, he’s not a very good singer. As such, his role in the 2012 remake of Les Mis is a bit puzzling, as his singing voice is very noticeably worse than his costars’. How the Gladiator star got cast in this movie is a bit of a mystery.

Tom Cruise as Jack Reacher

Openverse

Alan Ritchson plays the title character in the Amazon Prime series Jack Reacher, correcting a major casting mistake from the film of the same name from 2012. In that movie, Tom Cruise plays the title character — a move that angered fans of the original books. Reacher is described as subtle, quiet, and over 6 feet tall in the books. None of those traits seem to match up with Tom Cruise.

Jared Leto as Paolo Gucci

Universal

We’re not trying to pick on Jared Leto, but the man gets cast in a lot of roles he has no business being a part of. For instance, his take on Paolo Gucci, of all people, is borderline incomprehensible casting. Leto basically plays Gucci like an Italian cartoon character, using such outlandish vocal affectations and physical movements that his performance would be right at home in an SNL sketch.

Kristen Stewart as Bella

Openverse

Kristen Stewart’s acting chops are undeniable. Just check out her performance in Spencer to see what we mean. However, casting her as Bella Swan in Twilight was a bad move. She’s clearly given nothing to work with in the role, coming across as stoic, wooden, and lifeless in what should be a steamy Gothic horror/romance hybrid.

Read More: 10 Terrible Movies That Had Amazing Casts

Jesse Eisenberg as Lex Luthor

Openverse

Casting Jesse Eisenberg to play Lex Luthor instead of the Riddler in a movie where Batman also appears should be some kind of crime. Eisenberg’s excitable, manic performance as Lex is so wildly out of character for the classic villain that it’s baffling no one stepped in and suggested that director Zack Snyder just rename the character to “Edward Nigma” (the Riddler’s alter ego) to sidestep angry comics fans’ complaints.

Read More: When Hollywood Goes Rogue: Wildest Casting Decisions

John Wayne as Genghis Khan

RKO Pictures

This one is so egregious that it gets the crown as “worst casting decision of all time.” Genghis Khan, the legendary Mongolian warlord who founded one of the largest empires in human history, was, in fact, a Mongolian man. John Wayne, who portrayed him in The Conqueror, is a white guy. Casting Wayne as Genghis Khan was stunt casting at best and woefully inept at worst.

Read More: 10 Problematic Movie Characters That Wouldn’t Be Cast Today