15 Inexplicable Casting Decisions That Ruined Otherwise Good Movies
Casting can make or break a movie before any filming even takes place. An actor might be talented, famous, and perfectly capable of carrying a film, yet still feel completely wrong for a particular character. Sometimes the problem is a mismatch in age or appearance, while other choices simply bring an energy that clashes with everything around them. That does not necessarily mean the performance is bad, there’s a reason casting is an art on its own. Over the years, viewers have pointed to plenty of casting decisions that left them wondering what the filmmakers saw in the role, especially when the rest of the movie worked perfectly well.

Tom Cruise as Jack Reacher in Jack Reacher (2012)
Cruise brought his usual action presence to the role, but longtime readers of Lee Child’s books expected Reacher to be a much larger physical presence.

Jesse Eisenberg as Lex Luthor in Batman v Superman: Dawn of Justice (2016)
Eisenberg played Luthor as an eccentric, hyperactive tech billionaire, a choice that made the character feel very different from the calculating villain many viewers expected.

Keanu Reeves as Jonathan Harker in Bram Stoker’s Dracula (1992)
Reeves’ performance became one of the most frequently criticized parts of the movie, particularly because of his attempt at an English accent.

John Wayne as Genghis Khan in The Conqueror (1956)
Wayne played the Mongolian ruler with his familiar American accent and persona, making the casting one of Hollywood’s most infamous historical mismatches.

Russell Crowe as Javert in Les Misérables (2012)
Crowe’s casting required him to sing throughout the musical, and his vocal performance became a major point of criticism surrounding the film.

Denise Richards as Dr. Christmas Jones in The World Is Not Enough (1999)
Richards was cast as a nuclear physicist despite having little resemblance to the highly technical scientist the character was supposed to be.

Mickey Rooney as Mr. Yunioshi in Breakfast at Tiffany’s (1961)
Rooney’s performance relied on an exaggerated caricature that has since become one of the most criticized casting choices in classic Hollywood cinema.

Dane DeHaan as Valerian in Valerian and the City of a Thousand Planets (2017)
DeHaan’s subdued presence did not match the confident, charismatic space adventurer the role called for.

Sofia Coppola as Mary Corleone in The Godfather Part III (1990)
Coppola replaced Winona Ryder shortly before filming, and her performance became one of the most frequently criticized elements of the film.

Hayden Christensen as Anakin Skywalker in Star Wars: Episode II – Attack of the Clones (2002)
Christensen’s awkward delivery and the character’s unusually stilted dialogue created a performance that remains heavily debated among Star Wars viewers.

Jared Leto as the Joker in Suicide Squad (2016)
Leto’s heavily stylized interpretation gave the character a very different personality and aesthetic from previous versions, dividing audiences and critics.

Ben Affleck as Batman in Batman v Superman: Dawn of Justice (2016)
Affleck’s casting was initially controversial because audiences associated him with very different roles, although the performance itself received a more mixed response.

Russell Brand as Aldous Snow in Get Him to the Greek (2010)
Brand essentially carried over his exaggerated rock star persona from Forgetting Sarah Marshall, making the character feel like an extension of his own public image.

Emma Watson as Belle in Beauty and the Beast (2017)
Watson’s casting attracted considerable attention, but her performance and singing were criticized by some viewers who felt she did not fully capture the character’s qualities.

Taylor Lautner as Sharkboy in The Adventures of Sharkboy and Lavagirl (2005)
Lautner’s casting became particularly memorable because the character required an energetic superhero presence that the young actor was still developing at the time.