Robert Pattinson as Edward Cullen, "Twilight" -- Fans of Stephanie Meyers' young adult vampire novel series revolted when this relatively unknown actor was named as Bella Swan's future hubby, but then fans couldn't decide who they loved more, Edward or Jacob, so they broke into two teams.
Michael Keaton as Batman, "Batman" -- FAN: Hold up. You're telling me "Mr. Mom" is going to kick the Joker's ass? TIM BURTON: Yeap. And you're going to love him for it.
Jennifer Lawrence as Katniss Everdeen, "The Hunger Games" -- Lawrence was 20 when she was cast in the coveted role, but the character was 16. To make the casting for controversial, Katniss has brown hair, and Lawrence had blond hair. Oh, the horror. Obviously, they got over it when they spent a combined $691.2 million worldwide to see her in action.
Heath Ledger as The Joker, "The Dark Knight" -- Ledger was best known as a teen heartthrob and a gay cowboy before stepping in to fill Jack Nicholson's gigantic shoes, and fans weren't happy about it. Then Ledger's haunting and psychotic performance blew them away. Sadly, he didn't live long enough to say, "I told you so."
Daniel Craig as James Bond -- Agent 007 doesn't have blond hair! And fans weren't happy to see this blondie with blue eyes take over for tall, dark and handsome '90s Bond, Pierce Brosnan. But then something funny happened: "Casino Royale" was praised as one of the best Bond movies ever, and was the highest grossing one, too. Until "Skyfall" beat it.
Idris Elba as Heimdall, "Thor: The Dark World" -- Elba playing all-seeing, all-hearing Asgardian sentry Heimdall was opposed by the Council of Conservative Citizens and comic book fans who felt a black man shouldn't play a white Nordic god. Now, however, people are rallying for Elba to be the first black James Bond.
Mark Ruffalo as The Hulk/Dr. Bruce Banner, "The Avengers" -- Fans of Marvel's angriest superhero were pleased with Edward Norton's performance in "The Incredible Hulk" (especially after Ang Lee's "The Hulk"), so they were hoping he would join Joss Whedon's team of Earth's mightiest heroes, but he couldn't reach a deal with the studio, so Ruffalo had to step in, and Hulk smash his critics to pieces.
Tom Cruise as Lestat de Lioncourt, "Interview with the Vampire: The Vampire Chronicles" -- Author Anne Rice was the biggest critic of Cruise's casting, calling it "so bizarre; it's almost impossible to imagine how it's going to work." After seeing the film, however, she said that "from the moment he appeared, Tom was Lestat for me."
Anne Hathaway as Catwoman, "The Dark Knight Rises" -- Fans doubted that the "Princess Diaries" and "Devil Wears Prada" star could tackle a role that Michelle Pfeiffer played to purrfection in "Batman Returns," but not very many were left complaining after they watched her help Bruce Wayne save Gotham from Bane in the conclusion to Christopher Nolan's critically-acclaimed trilogy.
Tobey Maguire as Spider-Man, "Spider-Man" -- Fans of the Marvel superhero didn't think this former child actor could pull off a convincing wall crawler, and neither did Sony. But director Sam Raimi had faith in the "Cider House Rules" star, and it paid off when fans spent $821.7 million worldwide to see Maguire swing around the Big Apple in 2002.