D'abord avocat, il débute comme acteur au théâtre à la fin des années 1930, sous son véritable nom de Horace McNally ; de 1940 à 1942, il joue à Broadway dans trois pièces (dont Johnny Belinda en 1940-1941, pièce qu'il retrouvera lors de son
adaptation au cinéma en 1948).
Au cinéma, il apparaît de 1942 à 1978, notamment dans plusieurs westerns (dont Winchester '73 en 1950, aux côtés de
James Stewart) ; d'abord crédité de son vrai nom jusqu'en 1946, il adopte alors le pseudonyme de Stephen McNally, sous lequel il reste connu.
À la télévision, entre 1953 et 1980, il participe à quelques téléfilms et à de nombreuses séries.