Skip To Content

    20 Actors Who Were Perfectly Cast In Movie Roles, And 20 Actors Who Were Horribly Cast And Almost Ruined The Movie

    No one but Jennifer Hudson could've played Effie White in Dreamgirls.

    We asked the BuzzFeed Community to tell us which actors were perfectly *and* horribly cast in movie roles (to get a full picture of character portrayals in film). Here's what they had to say.

    Warning: Potential movie spoilers ahead! 🚨

    Note: Some submissions were pulled from various Reddit threads by users u/TrickDragonFruit1u/MikeBrando23, and u/[deleted].

    1. Horribly cast: Cameron Diaz as Jenny Everdeane in Gangs of New York (2002)

    Jenny telling Amsterdam: "You look stunned and poorly, sir"

    2. Perfectly cast: Daniel Kaluuya as Chris Washington in Get Out (2017)

    Missy interrogating Chris while he cries and sits nervously in the leather chair, before going to The Sunken Place

    3. Horribly cast: Ben Affleck as Bruce Wayne/Batman in Batman v Superman: Dawn of Justice (2016)

    Batman threatening Superman: "Do you bleed? You will"

    4. Perfectly cast: Rosamund Pike as Amy Dunne in Gone Girl (2014)

    Amy's monologue while driving in her car: "Nick Dunne took my pride and my dignity and my hope and my money. He took and took from me until I no longer existed. That's murder"

    5. Horribly cast: Topher Grace as Eddie Brock/Venom in Spider-Man 3 (2007)

    Venom telling Flint: "I wanna kill the spider, you wanna kill the spider — together, he doesn't stand a chance. Interested?"

    6. Perfectly cast: Awkwafina as Billi Wang in The Farewell (2019)

    Billi telling her mom in the back party room how frustrated and sad she was when they moved to the States

    7. Horribly cast: James Corden as...well, any character in any movie he's been in

    Corden in "Cats," "Into the Woods," and "The Prom"

    8. Perfectly cast: Lupita Nyong'o as Adelaide Wilson/Red in Us (2019)

    The end of "Us," Adelaide driving the car and having a flashback to when she was a child

    9. Horribly cast: Tom Cruise as Jack Reacher in Jack Reacher (2012)

    Cruise in three separate stills from "Jack Reacher," with tough expressions on his face while wearing a leather jacket

    10. Perfectly cast: Angelina Jolie as Lisa Rowe in Girl, Interrupted (1999)

    Lisa asking Susanna: "Scribble,. scribble, scribble, — written anything about me yet?"

    11. Horribly cast: Jared Leto as the Joker in Suicide Squad (2016)

    The Joker telling Capt Griggs: "I can tell you meant that — you're gonna be my friend"

    12. Perfectly cast: Ana de Armas as Marta Cabrera in Knives Out (2019)

    Marta revealing to everyone that Hugh was the one who killed Harlan

    13. Horribly cast: Anne Hathaway as Mirana, the White Queen in Alice in Wonderland (2010)

    The White Queen telling Alice: "Alice, you cannot live your life to please others — the choice must be yours"

    14. Perfectly cast: Harrison Ford as Indiana Jones in the Indiana Jones franchise

    Ford in "Raiders of the Lost Ark"

    15. Horribly cast: Keanu Reeves as Jonathan Harker in Bram Stoker's Dracula (1992)

    Keanu Reeves in three separate frames in "Bram Stoker's Dracula"

    16. Perfectly cast: Keanu Reeves as Neo in the Matrix franchise

    Neo telling Trinity: "I know you can hear me. I'm not letting go. I can't. I love you too damn much"

    17. Horribly cast: Benedict Cumberbatch as Dr. Strange in the MCU

    Dr. Strange telling Thor in "Thor: Ragnarock:" You can handle him from here"

    18. Perfectly cast: Toni Collette as Annie Graham in Hereditary (2018)

    Annie yelling at her kid with great passion for being mean to her

    19. Horribly cast: Rami Malek as Freddie Mercury in Bohemian Rhapsody (2018)

    Freddie questioning Brian's rhythm to "We Will Rock You" in the studio

    20. Perfectly cast: Angela Bassett as Tina Turner in What's Love Got to Do With It (1993)

    Tina standing up to Ike in her dressing room just before she performs as a solo act for the first time: "Let me tell you what I'm gonna do: I've got a room full of people who have come to see me. You hear me, Ike? Come to see me"

    21. Horribly cast: Cara Delevingne as Laureline and Dane DeHaan as Valerian in Valerian and the City of a Thousand Planets (2017)

    Three stills of Delevingne and DeHaan in "Valerian and the City of a Thousand Planets"

    22. Perfectly cast: Samuel L. Jackson as Nick Fury in the MCU

    Fury to Peter Parker: "I saw you at the funeral, but I didn't think that was a good time to exchange numbers;" Parker: "No, that would've been really inappropriate;" Fury: "That's what I just said;" Parker: "Right"

    23. Horribly cast: Mila Kunis as Jupiter Jones in Jupiter Ascending (2015)

    Jupiter telling Caine she loves dogs like she loves him, and feeling embarrassed about it

    24. Perfectly cast: Anthony Hopkins as Dr. Hannibal Lecter in The Silence of the Lambs (1991)

    Hannibal trapped in his prison cell, describing how he ate a man's liver with beans and wine

    25. Horribly cast: Matthew Goode as Ozymandias in Watchmen (2009)

    Goode as Ozymandias in "Watchmen" wearing a bright-colored blazer

    26. Perfectly cast: Michelle Yeoh as Eleanor Sung-Young in Crazy Rich Asians (2018)

    Eleanor telling the racist hotel manager in the beginning of "Crazy Rich Asians:" "Do get a mop. The floor is wet"

    27. Horribly cast: Arnold Schwarzenegger as Mr. Freeze in Batman & Robin (1997)

    Mr. Freeze talking to himself, saying: "In this universe, there's only one absolute: Everything freezes"

    28. Perfectly cast: Carrie Fisher as Princess Leia/General Leia Organa in the Star Wars franchise

    Fisher in "A New Hope," saying: "Will somebody get this big walking carpet out of my way?;" Fisher in Return of the Jedi with Harrison Ford, saying "I love you; I know;" Fisher in "The Force Awakens" saying, "May the force be with you"

    29. Horribly cast: Michael Cera as Scott Pilgrim in Scott Pilgrim vs. the World (2010)

    Scott telling Ramona: "I feel like I'm on drugs when I'm with you. Not that I do drugs, unless you do drugs, in which case I do drugs all the time"

    30. Perfectly cast: Regina Hall as Brenda Meeks in the Scary Movie franchise

    Brenda watching the news and telling Cindy a white girl fell down the well

    31. Horribly cast: Natalie Portman as Lena in Annihilation (2018)

    Portman in three separate shots in "Annihilation"

    32. Perfectly cast: Matthew Lillard as Shaggy in Scooby-Doo (2002)

    Shaggy telling Daphne, Fred, and Velma that the group is like a banana split: "Daphne, you're the pastrami and bubblegum flavored ice cream"

    33. Horribly cast: Emma Watson as Belle in Beauty and the Beast (2017)

    Belle yelling to Beast: "I'd starve before I ever ate with you"

    34. Perfectly cast: Patrick Stewart as Professor X in the X-Men franchise

    Professor X telling Magento that he's looking for hope

    35. Horribly cast: Charlie Hunnam as Raleigh Becket in Pacific Rim (2013)

    Raleigh telling Mako: "You look good"

    36. Perfectly cast: Jennifer Hudson as Effie White in Dreamgirls (2006)

    Effie singing "And I Am Telling You I'm Not Going" to Curtis

    37. Horribly cast: Emily Blunt as Kate Macer in Sicario (2015)

    Blunt as KAte Macer in "Sicario" shooting a gun, smoking, and taking a shower to wash blood off of herself

    38. Perfectly cast: Kara Hayward as Suzy Bishop in Moonrise Kingdom (2012)

    Suzy telling Laura: "We're in love. We just want to be together. What's wrong with that?"

    39. Horribly cast: Nat Wolff as Light Turner/Kira in Death Note (2017)

    Kira scared in the classroom, screaming: "Help! Help me! What the fuck?!"

    40. And perfectly cast: Heath Ledger as the Joker in The Dark Knight (2008)

    The Joker telling Batman: "You see, their morals, it's a bad joke. Dropped at the first sign of trouble. They're only as good as the world allows them to be"

    Note: Some submissions have been edited for length and/or clarity.

    Which actors do *you* think were either perfectly or horribly cast in a movie role? Let us know in the comments below!