
Hollywood is full of "what ifs" — and casting decisions are no exception.
You might not imagine anyone else playing your favourite characters, but many iconic roles almost went to very different actors before landing to the popular actors and actresses.
Here are 10 surprising casting close calls that could’ve changed movie history.
Neo – The Matrix:
Almost played by: Will Smith

Keanu Reeves became synonymous with The Matrix, but Will Smith was originally offered the role.
He turned it down to film Wild Wild West, later admitting he didn’t fully understand the script at the time.
Jack – Titanic:
Almost played by: Matthew McConaughey
_updates.jpg)
Leonardo DiCaprio made hearts melt as Jack Dawson, but Matthew McConaughey auditioned and was a strong contender. Director James Cameron ultimately felt DiCaprio had the right youthful energy.
Wolverine – X-Men:
Almost played by: Dougray Scott

Hugh Jackman wasn’t the first choice. Dougray Scott had the role but had to back out due to scheduling conflicts with Mission: Impossible 2 — opening the door for Jackman’s career-defining role.
Forrest Gump – Forrest Gump:
Almost played by: John Travolta
_updates.jpg)
Travolta turned down the role, which went on to win Tom Hanks an Oscar. Travolta later admitted it was a mistake.
Black Widow – Marvel Cinematic Universe:
Almost played by: Emily Blunt

Scarlett Johansson wasn't the first pick. Emily Blunt was offered the role but couldn’t commit due to scheduling conflicts with Gulliver’s Travels.
Iron Man – Iron Man:
Almost played by: Tom Cruise
_updates.jpg)
Before Robert Downey Jr. made the role iconic, Tom Cruise was attached to play Tony Stark. Creative differences and scheduling stopped it from happening.
The Joker – The Dark Knight:
Almost played by: Adrien Brody
_updates.jpg)
Heath Ledger’s unforgettable Joker might have never happened if producers had gone with Adrien Brody, who lobbied hard for the role.
Elle Woods – Legally Blonde:
Almost played by: Christina Applegate
_updates.jpg)
Reese Witherspoon nailed the part, but Christina Applegate was offered it first and declined, fearing it was too similar to past roles.
Bella Swan – Twilight:
Almost played by: Jennifer Lawrence

Before Kristen Stewart became Bella, Jennifer Lawrence auditioned for the role — but didn’t land it.