Though some may view westerns as simple action movies featuring cowboys and bounty hunters, the genre is home to some of the greatest performances in cinema history. Some of Hollywood’s biggest actors became stars by playing the heroes of classic westerns, like John Wayne and Clint Eastwood. These and other giants of the genre stunned audiences not only with their sharpshooting skills and wide-brimmed hats, but with their nuanced and memorable depictions of characters good, bad, and frequently in-between.
There’s no shortage of stellar acting in westerns, but some performances tower over the rest. Whether by turning the genre on its head, or bringing it to new heights, the actors on this list each brought something unforgettable to their respective movies. So, let’s take a trip through cinema history and look at the best performances in westerns, ranked.
7 Gary Cooper – High Noon (1952)
In the classic ’50s western, High Noon, Hollywood great Gary Cooper plays town marshal Will Kane. When he challenges the reign of a gang of outlaws, his townspeople turn against him and leave him to face the gang all alone. As Kane, Cooper exemplifies the strong moral code and stone-faced stoicism that later western heroes are patterned on. He shows his courage mainly through his actions, and all the while he wears a stern, semi-tragic look. This role won Cooper a well-deserved Oscar for best actor, and cemented his legacy in western movie history.
6 Leonardo DiCaprio – Django Unchained (2012)
Quentin Tarantino’s Django Unchained is filled with phenomenal performances. In such a star-studded film, only an actor as talented as Leonardo DiCaprio could steal the show from his co-actors. DiCaprio plays the primary antagonist, “Monsieur” Calvin J. Candie, a ruthless, psychopathic slaveholder with a penchant for violent outbursts. In his frightening performance of the character, DiCaprio is both charismatic and deeply sadistic, making for an unforgettable villain with some truly shocking scenes.
5 Samuel L. Jackson – The Hateful Eight (2015)
In Hateful Eight, a slow-burning Tarantino western, Samuel L. Jackson takes center stage as Civil War veteran turned bounty hunter, Major Marquis Warren. As with many of his other roles, Jackson puts a lot of himself into the part, letting his performative traits shine through as much as Tarantino’s vision for the character. He is foul-mouthed, darkly ironic, and trigger-happy when it suits him. As he helps the film along to its blood-soaked conclusion, Jackson ripples with the energy of a much younger man. He dominates the screen throughout, earning him a place among the other giants on this list.
4 Clint Eastwood – Unforgiven (1992)
By the time Unforgiven hit theaters in 1992, Clint Eastwood was 62 years old — no longer the rugged young star he had once been. But that didn’t mean he couldn’t return to the western genre to give yet another career-defining performance. As William Munny, a retired violent outlaw turned farmer, Eastwood proves that age for him is nothing but a number. He shoots and muses his way through a veritable sea of tense conflicts and moral dilemmas, all the while drawing on the same restrained power that made his earlier roles so exciting. It’s a tremendous performance that got Eastwood an Academy Award nomination.
3 John Wayne – The Searchers (1956)
When John Ford’s The Searchers released in 1956, lead actor and Hollywood legend John Wayne was no stranger to playing the hero in western movies. But in this picture, Wayne takes a turn towards villainy as the vengeance-obsessed Ethan Edwards. When Edwards’s niece is kidnapped by Comanches, he embarks on a violent, murderous revenge quest that ends with him nearly killing the niece he was trying to save. With his characteristic swagger and iconic stance, Wayne plays the transition from hero to villain beautifully, making this his all-time best performance. Even as the actor’s legacy becomes troubled, he is remembered fondly for roles like this one.
2 Casey Affleck – The Assassination of Jesse James by the Coward Robert Ford (2007)
For a film that seems to tell you the whole story in the title, The Assassination of Jesse James by the Coward Robert Ford is a complex and richly layered western. Brad Pitt gives a career-best performance in the starring role, but it’s Casey Affleck as Robert Ford who deserves the highest praise here. Robert, or Bob, is an awkward young man swept up in the story of the larger-than-life outlaw Jesse James. He devotes himself to this figure, to this legend, only to betray him in his own attempt at winning infamy. Affleck plays a nuanced Ford — more than a simple coward; the character takes on a dark complexity as he tries to escape the shadow of Jesse James. For his performance, Affleck was nominated for an Academy Award, and fans of the film are still wondering why he didn’t win, per Entertainment Weekly.
1 Clint Eastwood – The Good, the Bad, and the Ugly (1966)
Sometimes, the most iconic performance in a genre is also the best performance. It would be hard to think of a figure more central to the western genre than Clint Eastwood as the “Man with No Name,” a role he played across Sergio Leone’s trilogy of the same name. In The Good, the Bad, and the Ugly, Eastwood becomes the quintessential modern western hero: part hero and part outlaw; a man with a steely-eyed stare and quick hand who can’t seem to decide whether he values money or honor more highly. Express reports that Eastwood had this to say of the character in 2015: “I felt the less he said, the stronger he became and the more he grew in the imagination of the audience.” Looks like Eastwood’s instincts were right, as more than 50 years later the Man with No Name remains the undisputed face of the western genre.