Laurens, Iowa, 1994. Alvin Straight (Richard Farnsworth) is a 73-year-old frail old man who falls in his kitchen one day and waits for help from his slow-witted daughter Rose (Sissy Spacek). She takes him to a doctor, from whom Alvin will heed no advice despite his many ailments (Alvin is a World War II veteran who is a diabetic and former alcoholic who continues to smoke cigars and is in the middle stages of emphysema). His only solution for his painful walking problems is to use two canes.
One night during a raging thunderstorm, Alvin gets news informing him that his 75-year-old estranged brother Lyle (Harry Dean Stanton) has suffered a stroke. The next day on the phone with a relative, Rose says that Alvin and Lyle had a dispute ten years earlier and they have not spoken ever since.
Determined to see his brother after all that time, Alvin decides to visit him. The trouble is that Lyle lives 370 miles away in Mount Zion, Wisconsin, and Alvin is legally unable to drive a car due to his bad health and poor eyesight. To make matters worse, Rose cannot drive either and no buses go to Mount Zion. Undaunted, Alvin hatches a plan: he will drive his Rehd lawn mower all the way.
Alvin gathers some supplies, including a clapboard trailer that he hitches to the mower, and prepares for his long journey. Rose is worried about him, but the night before he departs, he tells her to look up into the sky at the stars.
Some of Alvin's old friends warn him on the way out of town that his journey is foolhardy, but he continues on, moving a few miles an hour for only a few hours until his tractor breaks down outside town. He and his tractor get towed back home, where he promptly puts the Rehd rider out of its misery with a shotgun blast. Reunited with his daughter, Alvin's determination knows no bounds. At the John Deere farm equipment dealer, he purchases a newer replacement lawn tractor from a salesman (Everett McGill) who is generous but describes Alvin as being a smart man, "until now."
On September 5, Alvin sets off once more for Wisconsin. By day he travels on the road and at night he camps out in the fields off the road, making a campfire for himself every night.
The first person he meets along his route is a pregnant, runaway hitchhiker (Anastasia Webb), to whom he offers some hot dogs and some inspiration after she explains that her parents would hate her for her condition. Alvin explains that his wife bore 14 children, only 7 of whom lived, and that Rose herself had 4 kids but they were taken away after a fire she was wrongly blamed for. He tells the girl that he used to ask his kids to each find a stick and try to break it, which they could do easily; then he would ask them to each place a stick in a bundle and try to break it, which they could not do. That bundle, he says, is family. The next morning, the girl is gone, having left behind a bundle of sticks.
Alvin enjoys watching a rainstorm from the shelter of an abandoned farmhouse. The next scene shows Alvin as a huge group of RAGBRAI cyclists race past him. He later arrives at the cyclists' camp and he is greeted with applause. He speaks with them about growing old. When he is asked about the worst part of being old, he replies, "remembering when you was young."
The next day, Alvin is troubled by the massive trucks passing him. He then interacts with a distraught woman (Barbara E. Robertson) who has hit a deer, and is being driven to distraction by the fact that she continually hits deer while commuting, no matter how hard she tries to avoid them. She drives away in a tearful huff, and Alvin, who had started to run short of food, cooks and eats the deer while an odd group of deer decoys looks on. Alvin then mounts the antlers above the rear doorway of his trailer as a tribute to the deer and the human sustenance it had provided.
Five weeks into his trip, as the landscape begins to undulate, Alvin's trusty mower goes out of control and he speeds down a steep hill where a few people are gathered to watch the controlled burning of an abandoned house. A kindly middle-aged couple called the Riordans (James Cada, Sally Wingert) welcome him to stay with them as he has his tractor fixed.
Now beginning to run low on cash, Alvin borrows a cordless phone from Mr. Riordan gently but resolutely refusing an invitation to come indoors and calls Rose to ask her to send him his Social Security check. He then leaves money on the doorstep to pay for his long-distance telephone call. A local motorist offers Alvin a ride the rest of the way to Lyle's, but Alvin declines, stating that he prefers to travel his own way.
A local man about Alvin's age invites him to a bar (Alvin does not drink, so he has milk). Alvin recalls his days in WWII, when he returned from France as a heavy drinker until a preacher helped him. He explains that he drank so much because he kept seeing terrible things from war. The other man recalls how one night all of his buddies were blown up by Nazis in a tent while he was standing outside. Alvin recalls shooting one of his own men by accident, and letting the rest of his men believe he was killed by a German sniper, a secret he has not confessed since it happened.
Alvin's tractor is fixed and he is presented with an exorbitant bill by the mechanics, who are twins and are constantly bickering. Alvin successfully negotiates the price down, and explains his mission, which he calls "a hard swallow to my pride," but "a brother is a brother." The mechanic twins seem to relate to this, realizing they should make peace.
Alvin sets off again, crossing the Mississippi River. Later, Alvin camps in a cemetery and chats with a priest (John Lordan). The priest recognizes Lyle's name and is aware of his stroke. The priest says that Lyle did not mention he had a brother. Alvin replies that "neither one of us has had a brother for quite some time." Alvin wants to make peace with Lyle and is emphatic that whatever happened ten years ago does not matter anymore. "I say, 'Amen' to that, brother," the priest replies.
The next day, Alvin arrives in Mount Zion and stops at a bar, where he orders a beer and drinks it... his first one in many years. He pays his tab and walk out.
The next obstacle Alvin must overcome is apparent engine trouble, just a few miles from Lyle's house. Alvin stops in the middle of the road, unsure of how to proceed. A large farm tractor driving by then stops to help, but fortunately this time the problem was evidently just a few drops of bad gas, because the lawn-tractor's engine sputters to life again after sitting for a few minutes. The gracious farmer then leads the way on his own tractor, and drives along slowly ahead of Alvin during the final leg of his journey to make sure he gets there okay.
Lyle's house is dilapidated. Using his two canes, Alvin makes his way to the door. He calls for his brother. At first Lyle does not appear and Alvin expresses relief when he does. The two brothers make contact, Lyle with a walker and Alvin with two canes. Lyle invites Alvin to sit down. Lyle looks at Alvin's mower-tractor contraption and asks if Alvin has ridden that thing just to see him. Lyle is moved. The two men sit and look up at the sky at the stars, as they had done as children.