Making movies is an art with a lot of moving parts. It’s not just the writers or directors that deserve credit, but also the actors. They can really break or make a film, which is why it’s so fascinating to learn about actors who nearly played iconic roles. Click through the slideshow for 15 iconic movies that almost have completely different casts.
“Forrest Gump” (1994)

It’s hard to imagine anyone else playing the role of Forrest Gump than Tom Hanks. But did you know John Travolta was almost the actor to play this role? Although John Travolta is a fantastic actor known for his roles in popular films like “Grease,” “Pulp Fiction,” and “Hairspray.”
“Edward Scissorhands” (1990)

Johnny Depp was born to act in “Edward Scissorhands.” Or at least that’s what it feels like. He wasn’t the only actor, however, who was considered for this role. For a short while, Tom Cruise was considered for this chilling role. He turned it down, however, as there were too many creative differences. The seasoned actor wanted a happier ending. Imagine that?
“Pretty Woman” (1990)

We could have had an entirely different actress as the leading lady in “Pretty Woman.” Instead of Julia Roberts, what if 80s queen Molly Ringwald stole the show? Well, this didn’t happen. And it wasn’t for any dramatic reason, either. Ringwald has acknowledged how the film was perfect for Julia Roberts.
“Barbie” (2023)

“Barbie” wasn’t only about to have a whole different cast, but also a different vibe. Before we got the masterpiece that is “Barbie,” Amy Schumer was going to be the titular character. The direction of the film was going to be a lot different too.
“The Matrix” (1999)

Several actors turned down roles for the first film in the Matrix series. Do you think they regret it? Will Smith was almost cast for Neo, the main character, but feared being typecast. The role eventually went to Keanu Reeves who did an excellent job. Janet Jackson was also considered to play Trinity, although this ultimately didn’t pan out.
“The Avengers” (2012)

Originally, Black Widow in the MCU Universe was supposed to be played by the lovely Emily Blunt. However, due to scheduling issues as she filmed “Gulliver’s Travels,” Blunt declined, leading to Scarlet Johansson landing the iconic red-haired role.
“La La Land” (2016)

“La La Land” almost had an entirely different cast – or at least the leading actors. Originally, Miles Teller and Emma Watson were going to star as the musical lovers. However, both dropped out of the project.
“Legally Blonde” (2001)

Reese Witherspoon absolutely killed her role in “Legally Blonde.” This super intelligent blonde and pink-loving lawyer, though, was nearly portrayed by Christina Applegate. She didn’t take this role due to fear of being typecast as she’d just played a ‘dumb blonde’ role.
“Silver Linings Playbook” (2012)

Although Anne Hathaway is an excellent actress, there is no one better to play Tiffany in “Silver Linings Playbook” than Jennifer Lawrence. She absolutely killed this role, winning an Academy Award for Best Actress. Anne Hathaway, though, also did an excellent job with a film released the same year, winning an Academy Award for Best Supporting Actress.
“Titanic” (1997)

The main characters and lovers in “Titanic” may have been played by different actors. Before Leonardo DiCaprio took the role of Jack, he nearly lost it to Matthew McConaughey. Rose was also nearly played by a different actress. Gwyneth Paltrow turned down this role as there was a conflict in her schedule.
“Wicked” (2024)

Ariana Grande almost didn’t star in the musical fantasy “Wicked.” Amanda Seyfried auditioned and almost got the role of Glinda. Dove Cameron also auditioned for the role. For Elphaba, Lady Gaga was nearly cast. Ultimately, the role went to Cynthia Erivo.
“Elf” (2003)

The iconic “Elf” movie wasn’t intended for Will Ferrel. Instead, the role was specifically written for another comedy legend – Jim Carrey. Because the film took so long to produce, Jim Carrey left the production before filming. Because of this, the role of Buddy went to Will Ferrel.
“Thor” (2011)

Actors don’t always get the role they audition for. However, this doesn’t mean they are automatically out of the project. Sometimes, their audition steers them in a different direction. For instance, while Tom Hiddleston auditioned for Thor, he ultimately played Loki in the MCU Universe.
“Basic Instinct” (1992)

Catherine Tramell, the main antagonist in “Basic Instinct” was almost played by a different person. Or four. So many different actresses were considered for this role and were either dropped or passed on it including, Meg Ryan, Geena Davis, and Michelle Pfeiffer.
“Casino Royale” (2006)

If Hugh Jackman wasn’t incredibly busy filming the X-Men series, he would have taken the role of James Bond in “Casino Royale.” Instead, this role went to Daniel Craig who reprised the role for “Quantum of Solace,” “Skyfall,” “Spectre,” and “No Time to Die.”
The image featured at the top of this post is ©Courtesy of Warner Bros..