The film opens, introducing Captain Benjamin L. Willard (Martin Sheen); a deeply troubled, seasoned special operations veteran. It is 1969. Willard has returned to Saigon from deployment in the field. He drinks excessively and appears to be having difficulty adjusting to life in the rear-area. Two intelligence officers, Lt. General Corman (G. D. Spradlin) and Colonel Lucas (Harrison Ford), and a government man (Jerry Ziesmer) approach him with an assignment: journey up the fictional Nung River into the remote Cambodian jungle to find Colonel Walter E. Kurtz (Marlon Brando), a member of the US Army Special Forces feared to have gone rogue.
They tell Willard that Kurtz, once considered a model officer and future general, has gone insane and is commanding a legion of his own Montagnard troops deep inside the forest in neutral Cambodia. Their claims are supported by very disturbing radio broadcasts and recordings made by Kurtz himself. Willard is ordered to undertake a mission to find Kurtz and terminate the Colonel's command "with extreme prejudice."
Willard joins the crew of a Navy Patrol Boat, Riverine (PBR), with an eclectic crew composed of QMC George "Chief" Phillips (Albert Hall), the Navy PBR boat commander; GM3 Lance B. Johnson (Sam Bottoms), GM3 Tyrone Miller (Laurence Fishburne), a.k.a. "Mr. Clean", and EN3 Jay "Chef" Hicks (Frederic Forrest).
Willard and the PBR crew rendezvous with the 1/9 Air Cavalry, commanded by Lieutenant Colonel Bill Kilgore (Robert Duvall) for transport to the Nung River. He initially refuses their request for transport until Kilgore, a keen surfer, is told by one of his men that Lance Johnson, a professional surfer, is a member of the boat's crew. Kilgore befriends Johnson, and later learns from one of his men that the beach down the coast which marks the opening to the river is perfect for surfing. This changes Kilgore's mind about transporting Willard and the PBR to the river, but from the map there is a Viet Cong-held village at the mouth of the river and Kilgore decides to capture the village. His men advise him that it's "Charlie's point" and heavily fortified. Dismissing this concern with the explanation that "Charlie don't surf!," Kilgore orders his men to saddle up in the morning to capture the town and the beach.
Riding high above the coast in a fleet of Hueys accompanied by OH-6As, Kilgore launches his attack on the beach. The scene, famous for its use of Richard Wagner's "Ride of the Valkyries," ends with the soldiers surfing the barely-secured beach amidst skirmishes between infantry and VC. After helicopters swoop over the village and demolish all visible signs of resistance, a giant napalm strike in the nearby jungle dramatically marks the climax of the battle. Kilgore exults to Willard, "I love the smell of napalm in the morning... The smell, you know that gasoline smell... Smells like, victory" as he recalls a battle in which a hill was bombarded with napalm for over twelve hours.
The lighting and mood darken as the boat navigates upstream and Willard's silent obsession with Kurtz deepens. Incidents on the journey include a run-in with a tiger while Willard and Chef search for mangoes. The boat continues up river and watches a USO show featuring Playboy Bunnies and a centerfold that degenerates into chaos.
Shortly after the Playmate performance, Phillips spots a sampan and orders an inspection over the objections of Willard. Initially reluctant to board the boat, Chef impatiently searches it; one of the civilians makes a sudden movement towards a barrel, prompting Clean to open fire and kill nearly everyone on the sampan. The civilian concerned about the barrel, a young woman, lies dying. Chef discovers that the barrel contained the woman's pet puppy. Phillips insists on taking the woman to receive medical attention; however, Willard ends the debate by shooting her, calmly stating "I told you not to stop," further alienating himself from the PBR's crew.
The boat moves up river to the American outpost at the Do Long bridge, the last U.S. Army outpost on the river, passing wreckage of a downed Huey helicopter and a B-52D Stratofortress. The boat arrives during a North Vietnamese attack on the bridge, which is under constant construction. Upon arrival, Willard receives the last piece of the dossier from a lieutenant named Carlson, along with mail for the boat crewmen. Willard goes ashore with Lance, who has taken LSD, and they make their way through the trenches where they encounter many panicked, leaderless soldiers. Realizing the situation has devolved into chaos, Willard and Lance return to the boat. The chief tries to convince Willard not to continue on with his mission. In response, Willard snaps at Phillips to continue upriver. As the boat departs, the NVA launch an artillery strike that destroys the bridge.
The next day, Willard learns from the information he received at Do Lung that an Army Captain named Colby was sent to find Kurtz a few months prior to Willard's assignment and is now missing. While the crew is busy reading mail, Lance pops open a purple smoke grenade, catching the attention of an unseen enemy hiding in the trees by the river, and prompting an attack on the boat. Clean is killed as he listens to an audio tape from his mother. The chief, who had a close relationship with Clean, becomes increasingly hostile to Willard.
Later, Montagnard villagers begin shooting arrows at the boat as it approaches the camp. The crew opens fire until the chief is hit by a spear. Willard attempts to assist the mortally wounded Phillips, who tries to kill Willard by pulling him onto the spear tip protruding from his chest. Willard grapples with Phillips until the man finally dies. Afterwards, Willard confides in Chef and Lance about his mission, and the two surviving crew of the boat reluctantly agree to continue their journey upriver as they are now in Cambodia. As they draw closer, they see the coastline is littered with dead bodies.
After arriving at Kurtz' outpost, Willard leaves Chef behind with orders to call in an airstrike on the village if he does not return and takes Johnson with him to the village. They are met by a manic freelance photographer (Dennis Hopper), who explains that Kurtz's greatness and philosophical skills inspire his people to follow him. As they go into the village, there are bodies that are ignored by the villagers, as well as severed heads scattered about the nearby Buddist temple which serves as Kurtz's living quarters. Willard also encounters the missing Captain Colby, who is in a nearly catatonic state.
Willard is bound and brought before Kurtz in the darkened temple. Kurtz lectures him on his theories of war, humanity, and civilization. Kurtz explains his motives and philosophy in a haunting monologue in which he praises the ruthlessness of the Viet Cong which he witnessed firsthand after one of his own humanitarian missions. He recalls the incident as leaving him traumatised but also giving him a new and deeper understanding of the complexities of his enemy and the level to which the US would have to commit in order to prevail.
The scene changes to Chef attempting to call in the airstrike on the village as ordered by Willard. Chef is attacked before the call is completed, and the scene cuts to Willard bound to a post outside in the pouring rain. Kurtz walks up to him and drops Chef's severed head into his lap.
Sometime later, a villager releases Willard's bonds and gives him a machete. Willard enters Kurtz's chamber as Kurtz is making a recording, and attacks him with the machete. This entire sequence is set to "The End" by The Doors and juxtaposed with a ceremonial slaughtering of a water buffalo.
Lying bloody and dying on the ground, Kurtz whispers "The horror... the horror..." before expiring. Willard descends the stairs from Kurtz' chamber and drops his weapon. The villagers do so as well. Willard walks through the now-silent crowd of natives and takes the last surviving crewperson, the near-catatonic Lance, by the hand. With his mission accomplished, Willard leads Johnson to the PBR, and the two of them sail away downriver as Kurtz's final words echo and the scene fades to black. In some but not all prints of the film, the closing credits play over footage of Kurtz' temple-base exploding; after the film's original general release Coppola replaced this footage with a plain black screen because some viewers interpreted it as an air strike called in by Willard, which Coppola did not intend.