Le film décrit deux conflits qui ont lieu autour de Flagstone, une ville fictive dans l'Ouest américain : une lutte autour de l'arrivée du chemin de fer et une vengeance contre un tueur froid.
Harmonica
Un joueur d'harmonica mystérieux (Charles Bronson) arrive par le train. C'est la longue scène d'ouverture du film, où l'on voit trois tueurs vêtus de cache-poussières (de longs manteaux maxi ; long dusty coats dans la version originale) envoyés par Frank l'attendre à la gare sous la chaleur. La séquence se prolonge pendant l'arrivée du train filmée depuis très loin. Quand le train s'éloigne, le joueur d'harmonica et les tueurs se trouvent face à face. Le joueur d'harmonica les abat tous les trois, tout en étant blessé. Pendant toute la suite du film, il ne sera connu que sous le nom de l'Harmonica. Pourtant, il ne sait pas en jouer : il n'en tire que des séquences grinçantes.
La trame principale tourne autour d'une lutte pour La source fraîche (Sweetwater en version originale), une propriété sur un terrain quasi-désertique près de Flagstone. Pendant longtemps, on se demande pourquoi le propriétaire Brett McBain (Frank Wolff) a fait construire ici une ferme pour s'y installer avec ses trois enfants. C'est beaucoup plus loin dans le film qu'on comprend que McBain a acheté ce terrain car il contient la seule source d'eau de la région. Il prévoyait que quand le chemin de fer arriverait, il devrait obligatoirement passer par cette propriété pour alimenter en eau ses locomotives à vapeur. McBain avait aussi acheté une grande quantité de matériaux de construction pour pouvoir construire une gare et des bâtiments tout autour.
Et effectivement la ligne de chemin de fer du magnat Morton (Gabriele Ferzetti) doit bien passer par Sweetwater. Morton envoie son âme damnée Frank (Henry Fonda) pour intimider McBain. Mais Frank et ses complices tuent McBain ainsi que ses trois enfants. Pour faire accuser du meurtre le Cheyenne (Jason Robards) et sa bande vêtue de cache-poussières, il en laisse un morceau sur les lieux de son forfait.
Jill (Claudia Cardinale), que McBain a épousée à La Nouvelle-Orléans, arrive à Flagstone par le train nouvellement créé. Évidemment, elle ne trouve personne venu l'attendre et elle loue une carriole pour rejoindre son mari. Cela vaut une séquence dans les collines de Monument Valley aux formes tellement reconnaissables. Arrivée à Sweetwater, elle découvre toute la famille massacrée et se retrouve héritière de la propriété. Elle décide tout de même de ne pas rentrer en ville et de rester à Sweetwater.
Dans une auberge sur le chemin de Sweetwater, l'Harmonica rencontre le Cheyenne et sa bande qu'il prend pour la bande de Frank à cause des cache-poussières qu'ils portent, avant que le Cheyenne ne démente que les tueurs aient été envoyés par lui. Les deux hommes entretiendront par la suite une forme de sympathie à distance à travers leur collaboration. Arrivé à Sweetwater, l'Harmonica abat deux hommes envoyés par Frank pour tuer Jill. Il explique au Cheyenne que Jill perdra ses droits sur Sweetwater si au minimum la gare n'est pas construite quand le train arrivera. Le Cheyenne met alors ses hommes au travail pour construire les bâtiments à partir des matériaux disponibles.
Frank s'oppose de plus en plus à Morton, ce qui est facilité par l'infirmité de ce dernier. Après avoir enlevé Jill et couché avec elle, il la force à lui vendre la propriété à vil prix lors d'enchères en intimidant les autres acheteurs. Mais l'Harmonica fait une offre très supérieure basée sur l'argent de la prime pour la capture du Cheyenne qui était recherché. Après avoir repoussé une nouvelle tentative d'intimidation par Frank, l'Harmonica redonne la ferme à Jill. À ce stade, certains des hommes de Frank payés par Morton, qui veut reprendre le contrôle de la situation, essaient de tuer Frank. Mais l'Harmonica les en empêche pour garder ce privilège pour lui-même.
Frank se rend à Sweetwater pour affronter lui-même l'Harmonica. Les deux hommes vont s'affronter dans un duel. À ce moment, le motif de la vengeance de l'Harmonica est révélé dans un flashback : quand l'Harmonica était enfant, Frank a tué son frère aîné de façon cruelle : il l'a fait pendre à une corde attachée au sommet d'une arche (tournée à Texas Hollywood) debout sur les épaules du jeune garçon et a enfoncé un harmonica dans la bouche de celui-ci. L'Harmonica tire le premier et blesse mortellement Frank. Juste avant de mourir, Frank lui demande encore qui il est. Il lui enfonce alors l'harmonica dans la bouche.
Débarrassés de Frank, l'Harmonica et le Cheyenne vont dire au revoir à Jill, qui supervise la construction de la gare alors que les équipes de poseurs de rail se rapprochent de Sweetwater. Le Cheyenne s'effondre alors, révélant qu'il a été touché par Morton quand lui et ses hommes se battaient contre ceux de Frank. Le prochain train amenant des rails arrive et le film se termine alors que Jill va donner à boire aux ouvriers et que l'Harmonica s'éloigne en emportant le corps du Cheyenne sur son cheval.