We are aboard a sailing boat in the Thames estuary, waiting for the tide to turn.  To pass the time, Marlow, a seaman, recounts a tale from his past:

Having fostered since childhood a desire to visit the heart of Africa, Marlow is given the opportunity when he learns of a European company operating on one of her major rivers. Calling on the connections of an aunt, he secures himself a position as a steamboat captain. Following an interview with the Company’s director and a medical, Marlow departs for Africa aboard a French steamboat.

After a voyage lasting more than thirty days, the ship anchors at the mouth of the river, and Marlow boards another steamer to take him on to the Company’s Station. There he encounters a chain-gang of six native prisoners, a railway under construction, and a forest clearing where some of the exhausted African workers have withdrawn to die. Shortly afterwards, during a meeting with the Company’s chief accountant, Marlow first hears the name of Kurtz, a ‘first-class agent’ in charge of an important trading post upriver in the ‘true ivory country’. Next day, Marlow leaves with a caravan of sixty men to make the two hundred mile journey overland to the Central Station, where he is to assume command of his steamer.

They arrive at the Central Station only to learn that Marlow’s assigned steamer is lying at the bottom of the river. It is salvaged, and during the next few months spent repairing the vessel, Marlow observes the scheming of the agents and notes their all-consuming desire for ivory. He also overhears a conversation between the station manager and his uncle regarding Kurtz, who both men seem to regard as a threat to their own positions. After repairing the boat, Marlow is given his first assignment: a voyage upriver to collect Kurtz and his ivory. Marlow, the manager, and three other European agents set out on the long and hazardous journey upriver, with a crew of twenty African cannibals.

As the steamer ventures through the mysterious and primeval jungle, Marlow has ample time to dwell upon his growing obsession with the enigmatic Kurtz. They are not far from Kurtz’s station when the steamer comes under attack from a band of local tribesmen. During the exchange of fire, Marlow’s African helmsman is killed.  On reaching the station, they are greeted by a young Russian who has become something of a disciple to Kurtz.

While the Russian espouses the brilliance of Kurtz, Marlow gets his first hint of the agent's current state of mind: a collection of severed heads impaled on poles surround the station. He learns from the Russian that Kurtz has managed to convince the local people he is some kind of god, and has been leading raids into the surrounding territory to procure ivory. It is not long before Kurtz makes his appearance, a gaunt and clearly ill figure borne upon a stretcher. Reluctant to leave but too sick to resist, Kurtz allows himself to be taken aboard the steamboat. During the return voyage, Marlow spends time with the sick man, witnessing at first hand the madness that has overtaken him in this isolated place. Kurtz dies, after making his deathbed exclamation: 'The horror! The horror!'

A year after returning to Europe, Marlow visits Kurtz’s fiancée, still in mourning and still convinced of her late partner’s virtue and greatness. When she asks Marlow about the manner of Kurtz’s death and his last words, he cannot bring himself to tell her the truth. That truth is ‘too dark altogether’. Marlow tells her that Kurtz’s final utterance was her name.

Marlow’s story completed, the novel closes with a description of the Thames under a sombre overcast sky, its waterway seeming to ‘lead into the heart of an immense darkness.’