The novel is divided into five sections or 'books'. In the first, Frederic Henry, an American paramedic serving in the Italian Army, is introduced to Catherine Barkley, an English nurse, by his good friend and roommate, Rinaldi, a surgeon. Frederic attempts to seduce her; although he doesn't want a serious relationship, his feelings for Catherine build. Frederic is wounded in the knee by a mortar on the Italian Front and sent to a hospital in Milan, where Catherine is also sent.
The second book portrays the growth of Frederic and Catherine's relationship as they spend time together in Milan over the summer. Upon seeing Catherine in hospital for the first time, Frederic is immediately lovestruck. They consort with each other when work demands on Catherine's time permits, and also go out on the town together. After his knee heals, Frederic is diagnosed with jaundice but is soon kicked out of the hospital and sent back to the front after it is discovered he concealed alcohol. By the time he is sent back, Catherine is three months pregnant.
In the third book, Frederic returns to his unit and discovers morale has severely dropped. Not long afterwards, the Austro-Hungarians break through the Italian lines in the Battle of Caporetto, and the Italians retreat. There is considerable delay and chaos on the road during the retreat and Frederic, wishing to avoid a possible aerial attack while stuck en route, decides to take an alternate path. He and his men quickly get lost and their cars are stuck in the mud, after which a frustrated Frederic kills a sergeant for insubordination. After catching up to the main retreat, Frederic is taken to a place by the military police, where officers are being interrogated and executed for the "treachery" that supposedly led to the Italian defeat. Frederic escapes by jumping into a river. He heads to Milan to find Catherine only to discover that she has been sent to Stresa.
In the fourth book, Catherine and Frederic reunite and spend some time in Stresa before Frederic learns he will soon be arrested. He and Catherine then flee to neutral Switzerland in a rowboat given to him by a barkeep. After interrogation by Swiss authorities, they are allowed to stay in Switzerland.
In the final book, Frederic and Catherine live a quiet life in the mountains until she goes into labor. After a long and painful birth, their son is stillborn. Catherine begins to hemorrhage and soon dies, leaving Frederic to return to their hotel in the rain.