Un extraño y errante pistolero que se hace llamar "Shane" (Alan Ladd) llega a la finca de la familia Starret, formada por el granjero Joe Starret (Van Heflin), su esposa Marian (Jean Arthur) y su hijo, el pequeño Joey (Brandon de Wilde). Aunque en un principio le reciben amablemente, cuando ven que detrás de él se acerca un grupo de jinetes, le echan de malas maneras temiendo un ataque a la granja. Shane se marcha sin mediar palabra.
El grupo está encabezado por Ryker (Emile Meyer), un poderoso y malhumorado terrateniente que quiere arrebatarle a los Starret las tierras. Cuando regresa Shane, su sola presencia intimida a los hombres a caballo. Como agradecimiento, el granjero le ofrece un trabajo en la finca. Pronto, el pistolero se ganará un lugar en la familia Starret, saliendo en defensa de las tierras ante la amenaza de la banda de Ryker.