Casting decisions in Hollywood often look inevitable once a movie becomes a hit. Yet behind almost every legendary role sits a paper trail of near misses, scheduling conflicts, and gut instincts that could have gone the other way entirely. Some actors walked away from parts that would go on to define entire franchises. Others were locked out by contracts they signed before anyone knew what they were giving up. Here are eight cases where the history of modern cinema nearly took a very different shape.
Will Smith almost became Neo in The Matrix
Before Keanu Reeves ever stepped into a trench coat and dodged bullets in slow motion, the Wachowskis brought the role of Neo directly to Will Smith. The writers and directors of the first Matrix movie offered the role of Neo to Smith. At the time, Smith was fresh off Men in Black and one of the biggest movie stars on the planet, which made him an obvious target for a studio betting big on an ambitious science fiction concept.
Smith has since explained that the pitch itself is what put him off, since he found the description of the film’s groundbreaking visual effects hard to follow. Smith reveals that if he had accepted the role of Neo, Morpheus likely would have gone to Val Kilmer, who was also considered for Neo alongside names like Nicolas Cage, Leonardo DiCaprio, Brad Pitt, Johnny Depp, and Sandra Bullock. Smith chose Wild Wild West instead, a decision he has openly called one of the biggest regrets of his career.
Tom Selleck was Hollywood’s original Indiana Jones
Long before Harrison Ford ever cracked a whip on screen, Steven Spielberg and George Lucas wanted Tom Selleck for the role. Spielberg and Raiders writer George Lucas were not aware at the time that Selleck was still contractually bound to CBS, the network behind Magnum PI, which starred Selleck as Thomas Magnum, a private investigator living in Hawaii. Selleck actually tested for the part and got it, only for the timing to fall apart almost immediately afterward.
Once CBS realized how much interest Selleck was generating, the network refused to release him from his obligations. CBS, hearing that Selleck was in high demand by Spielberg and Lucas, decided they had something with him as Magnum, so they greenlit the show. Ford has since credited Selleck directly for the opportunity, noting on multiple occasions that he became the second choice once Selleck could not get out of his contract.
John Travolta was the first choice for Forrest Gump
Tom Hanks earned an Oscar for playing Forrest Gump, but the role was reportedly offered to John Travolta first. Other actors considered for the role included Chevy Chase, Bill Murray, and Sean Penn, though the first choice for the part actually belonged to John Travolta. Travolta had just come off a rough stretch in the 1980s and was looking for the right project to reset his career.
He ultimately chose a different 1994 film instead, one that would end up defining his comeback in a completely different way. After being offered the role of Forrest Gump, Travolta decided to turn the film down in favor of another project, the role of Vincent Vega in Quentin Tarantino’s Pulp Fiction, which revitalized his career. Travolta has said he has no regrets about the choice, pointing out that turning down a role can end up being a gift to whoever takes it instead.
Al Pacino turned down Han Solo in Star Wars
It sounds almost impossible now, but George Lucas’s team once put the script for Star Wars in front of Al Pacino. The Godfather star revealed he was offered the part of the iconic Millennium Falcon captain in the original 1977 Star Wars film but turned it down, and the role went to Harrison Ford instead, launching his famous career. Pacino was already a rising star off The Godfather at the time, which made him a tempting pick for a studio unsure whether the space opera would even work.
Pacino has since joked candidly about the decision in interviews. He recalled being offered a script called Star Wars along with a substantial payday, but said he simply did not understand it after reading it, so he passed. The role instead became the launching pad for one of the most recognizable careers in film history.
Nicolas Cage was set to become Superman
In the late 1990s, Nicolas Cage was cast as Clark Kent for Tim Burton’s Superman Lives, a project that came remarkably close to actual production. Superman Lives was a canceled Superman movie planned for production in the 1990s, directed by Tim Burton and produced by Jon Peters, and it was set to star Nicolas Cage as Superman and Clark Kent. Costume tests and screen footage of Cage in the suit exist and have circulated online for years, offering a strange glimpse into what might have been.
The film ultimately collapsed for financial and creative reasons before cameras ever fully rolled. Warner Bros. pulled the plug on the project due to concerns about the script’s quality and budget. Cage would eventually get a small taste of the role decades later, appearing briefly as Superman in the 2023 film The Flash.
Emily Blunt almost suited up as Black Widow
Before Scarlett Johansson made Natasha Romanoff a fixture of the Marvel Cinematic Universe, the role reportedly belonged to Emily Blunt. In 2009, multiple outlets reported that Blunt turned down the part of the future Avenger in Iron Man 2 because of scheduling conflicts and a contractual agreement with 20th Century Fox tied to Gulliver’s Travels. Blunt has said she was genuinely drawn to the project and eager to work alongside Robert Downey Jr. at the time.
Losing the role stung more than most fans might assume. Blunt described the decision as heartbreaking given how much pride she takes in the projects she chooses, adding that she loved Iron Man and had been obsessed with the idea of working with Downey Jr. She has since praised Johansson’s performance without reservation, saying plainly that the best choice ultimately got the part.
John Krasinski screen tested for Captain America
Interestingly, Emily Blunt was not the only one in her household to brush against the Marvel Cinematic Universe early on. Krasinski almost joined the MCU back in Phase One, as he auditioned to play Captain America, a role that ultimately went to Chris Evans. Krasinski has spoken fondly about the process, admitting he was genuinely excited about the possibility of joining the Marvel universe.
He found out he had lost the role in a memorably ordinary way. His agent called to say the studio was going with Chris Evans, and Krasinski responded by agreeing that Evans simply looked the part. He has said since that he never felt bitter about the outcome, largely because he agreed with the decision himself.
Hugh Jackman was in the running for James Bond
Before Daniel Craig redefined the character in Casino Royale, producers reportedly looked at a very different kind of leading man. Hugh Jackman was approached to play James Bond in Casino Royale before Daniel Craig was cast. At the time, Jackman was already established as an action lead through his work as Wolverine in the X-Men franchise, making him a plausible fit for a rebooted, grittier Bond.
The producers ultimately went a different direction, choosing Craig to anchor a franchise reboot that leaned harder into physical realism and emotional weight than previous Bond entries. Craig’s version of the character went on to headline five films and reshape audience expectations for the role entirely. Jackman, for his part, continued building his own franchise identity through Wolverine and a growing list of stage and film credits.
That trail of almost-castings adds up to a useful reminder about how thin the line between one career path and another can be in this industry. A single contract, a single pitch meeting, or a single scheduling conflict was often the only thing separating these actors from roles that ended up reshaping someone else’s career instead.