The troops of General Custer (Richard Mulligan) massacre almost everyone in the Cheyenne village where Jack Crabb (Dustin Hoffman) is living, including Jack's pregnant wife. Jack manages to escape, along with his adoptive grandfather Old Lodge Skins (Chief Dan George).
Seeking revenge on Custer, Jack gets a job as a scout with Custer's brigade. He goes to Custer's tent to kill him, but chickens out. Custer realizes what Jack intended to do, and scornfully sends Jack away- he regards Jack as a contemptible coward, unworthy even of being hanged.
For a long time, Jack drinks heavily, in an attempt to forget the loss of his wife. Eventually, he sobers up and once again gets a job as a scout with Custer's brigade. Custer recognizes Jack, and realizes Jack will surely try to trick him. Jack knows perfectly well that Custer distrusts him, and will assume anything Jack tells him is a lie. So, Jack leads Custer and his men to Little Big Horn. Jack tells Custer that there are thousands of heavily armed Indians waiting there. Custer foolishly believes Jack is lying, so he leads his men into battle aginst what he assumes will be a small band of Indians.
Custer's men are quickly killed by the superior forces of the Indians. As his men fall around him, the deranged Custer begins hallucinating; he imagines that Jack Crabb is President Ulysses S. Grant, and he denounces Grant as a drunken incompetent. Jack tells Custer to shut up. This outrages Custer, who pulls out his pistol and prepares to shoot "President Grant." But before Custer can shoot, Jack's old enemy Younger Bear (Cal Bellini) kills Custer and carries Jack to safety. Even though Younger Bear hates Jack, he remembered that Jack once saved his life and was duty-bound to save Jack. Now that Younger Bear has repaid his debt to Jack, he announces happily that he will be permitted to kill Jack the next time they meet.
Delighted by the Cheyenne victory over the U.S. cavalry, Jack finds his grandfather, Old Lodge Skins. Unlike Jack, Old Lodge Skins is not in a celebratory mood. He knows that, in the long run, the white men will prevail and that the Cheyenne have no future. He decides that this is a good day to die, and goes through an elaborate pre-death ritual, after which he lies down on his blanket to die. When it starts to rain, Old Lodge Skins opens his eyes, realizes that he is not dead, and chuckles "Sometimes the magic works and sometimes it doesn't."
*At this point in the movie, we return to the present, where 120 year old Jack Crabb has just finished telling his story to a reporter. Deeply saddened by his memories of what happened to his wife and to the Cheyenne nation, Jack ends the interview and sends the reporter away.
Thanks John L!