De oude man Santiago woont in een klein vissersdorpje in Cuba en vist helemaal alleen. De laatste keer bracht hij 84 dagen op zee door, maar ving niets. Eerder viste een jongen Manolin met hem, die de oude man veel hielp, maar de ouders van de jongen besloten dat Santiago pech had en zeiden tegen zijn zoon dat hij met een andere boot naar zee moest gaan.
De oude man leerde Manolin vissen, en de jongen houdt van Santiago en wil hem helpen. Hij koopt hem sardientjes als aas en brengt eten naar zijn hut. De oude man is al lang in het reine met zijn armoede.
Hij was te eenvoudig van geest om erover na te denken wanneer nederigheid bij hem opkwam. Maar hij wist dat nederigheid was gekomen zonder schaamte of verlies van menselijke waardigheid.
Ze praten met de jongen over vissen en beroemde honkbalspelers. 'S Nachts droomt de oude man van Afrika in zijn jeugd en' leeuwen die aan land gaan '.
De volgende ochtend gaat de oude man vroeg vissen. De jongen helpt hem het zeil te dragen en de boot voor te bereiden. De oude man zegt dat hij deze keer 'in geluk gelooft'.
Een voor een zeilden vissersboten van de kust af en gingen naar zee. De oude man houdt van de zee, hij beschouwt het als tederheid als een vrouw. Santiago heeft een aas gehaakt en zwemt langzaam met de stroom mee, mentaal communicerend met vogels en vissen. Gewend aan eenzaamheid praat de oude man hardop tegen zichzelf.
Voordat hij alleen zong; soms zong hij zelfs 's nachts, op wacht, als hij op grote zeilboten liep of op schildpadden jaagde.
De oude man kent verschillende bewoners van de oceaan en behandelt ze heel voorzichtig.
Ten eerste vangt Santiago een beetje tonijn. Hij hoopt dat er naast een zwerm tonijn een grote vis is die van sardines houdt. Al snel merkt de oude man een lichte trilling op van een flexibele groene hengel, die zijn hengel vervangt. De vislijn gaat naar beneden en de oude man voelt het enorme gewicht van de bijtende vis.
De oude man probeert een dikke vislijn te trekken, maar dat lukt niet - een grote en sterke vis trekt een lichte boot met zich mee. De oude man betreurt het dat er geen jongen bij hem is - hij zou aas van andere hengels kunnen nemen terwijl Santiago met vissen vecht.
Dit duurt ongeveer vier uur. De avond nadert. De armen van de oude man zijn ingesprongen, hij gooit de vislijn op zijn rug en legt er een tas onder. Nu kan Santiago tegen de zijkant van de boot leunen en een beetje ontspannen.
Het is onmogelijk om op oudere leeftijd alleen gelaten te worden ... Dit is echter onvermijdelijk.
Nacht. De vis trekt de boot verder van de kust. De oude man is moe, maar de gedachte aan een vis laat hem geen seconde achter. Soms heeft hij medelijden met haar - de vis, zo groot, sterk en oud, moet sterven zodat hij kan leven. Santiago praat tegen de vis: 'Ik zal je niet scheiden tot ik sterf.'
De kracht van de oude man raakt op en de vis wordt niet moe. Santiago eet bij zonsopgang tonijn - hij heeft geen ander voedsel. De krampen in de linkerhand van de oude man. De oude man hoopt dat de vis tevoorschijn komt, en dan kan hij haar doden met een harpoen. Uiteindelijk gaat het bos omhoog en verschijnt er een vis aan de oppervlakte. Ze brandt in de zon, haar hoofd en rug zijn donkerpaars en in plaats van haar neus is een zwaard zo lang als een honkbalknuppel. Ze is twee voet langer dan de boot.
Alleen, in de open zee, was hij stevig gehecht aan zo'n grote vis als hij nog nooit had gezien, waarover hij nog nooit had gehoord.
Aan de oppervlakte verschijnt de vis opnieuw de diepte in, trekt de boot mee en de oude man verzamelt kracht om hem vast te houden. Hij gelooft niet in God en leest Onze Vader.
Er gaat weer een dag voorbij. Om zichzelf af te leiden, herinnert de oude man zich honkbalwedstrijden. Hij herinnert zich hoe hij ooit zijn kracht in een taverne in Casablanca met een machtige zwarte man, de sterkste man in de haven, mat, hoe ze een hele dag aan tafel zaten zonder hun handen te verliezen, en hoe hij uiteindelijk de overhand kreeg. Hij nam meer dan eens deel aan soortgelijke gevechten, won, maar gooide deze kwestie vervolgens weg en besloot dat hij de rechterhand nodig had om te vissen.
De strijd met de vis gaat door. Santiago houdt het bos met zijn rechterhand vast, wetende dat wanneer de krachten opraken, de linker haar zal vervangen, de kramp waarin de kramp al lang is verstreken. Een makreel komt een kleine hengel tegen. De oude man versterkt zijn kracht ermee, hoewel deze vis volkomen smakeloos is. Hij heeft spijt van de grote vis, die niets te eten heeft, maar de vastberadenheid haar hieruit te doden neemt niet af.
Het is zo goed dat we de zon, maan en sterren niet hoeven te doden. Het is genoeg dat we voedsel uit de zee persen en onze broers doden.
'S Nachts komt de vis naar de oppervlakte en begint in cirkels te lopen, de boot naderend of zich ervan weg bewegend. Dit is een teken dat de vis moe is. De oude man bereidt een harpoen voor om de vis af te maken. Maar ze stapt opzij. Door vermoeidheid raken gedachten verward in het hoofd van de oude man en dansen zwarte vlekken voor zijn ogen. Santiago verzamelt de resterende kracht en steekt de harpoen aan de vis aan de zijkant.
En toen kwam de vis tot leven, hoewel hij al de dood in zichzelf bracht - hij rees hoog boven het water uit, alsof hij opschepte over zijn enorme lengte en breedte, al zijn schoonheid en kracht.
De oude man overwint misselijkheid en zwakte, bindt vissen aan de zijkant van de boot en draait zich naar de kust. De richting van de wind vertelt hem welke weg hij moet zwemmen om bij het huis te komen.
Een uur gaat voorbij voordat de eerste haai, die naar de geur van bloed is gevaren, te zien is. Ze nadert de achtersteven en begint de vis met haar tanden te scheuren. De oude man slaat haar met een harpoen op de meest kwetsbare plek op de schedel. Ze zakt naar de bodem en sleept een harpoen, een deel van het touw en een enorm stuk vis
Santiago doodt nog twee haaien met een mes aan een riem. Deze haaien nemen minimaal een kwart van de vissen mee. Bij de vierde haai breekt het mes en de oude man haalt een sterke knuppel tevoorschijn.
Hij wist dat elke haaienduw op een boot een stuk gescheurd vlees betekende en dat de vissen nu een spoor achterlieten op de zee, breed als een snelweg, en toegankelijk voor alle haaien ter wereld.
De volgende groep haaien valt de boot aan voor zonsondergang. De oude man jaagt ze weg met stoten op de kop, maar 's nachts komen ze terug. Santiago vecht met roofdieren eerst met een stokje, daarna met een scherp fragment van een helmstok. Tenslotte zwemmen haaien weg: ze hebben niets meer te eten.
De oude man komt 's avonds laat de baai van zijn hut binnen. Nadat hij de mast heeft verwijderd en het zeil heeft vastgebonden, dwaalt hij naar het huis en voelt zich ongelooflijke vermoeidheid. Even draait de oude man zich om en ziet een enorme staart vis en een weerspiegeling van een witte rug achter de achtersteven van zijn boot.
Een jongen komt naar de hut van de oude man. Santiago slaapt. De jongen huilt als hij zijn gewonde handpalmen ziet. Hij brengt de oude man koffie, kalmeert hem en verzekert ons dat ze vanaf nu samen gaan vissen, want hij moet nog veel leren. Hij gelooft dat hij de oude man geluk zal brengen.
'S Morgens staan vissers versteld van de overblijfselen van een gigantische vis. Rijke toeristen komen aan land. Ze zijn verrast om een lange witte rug met een enorme staart op te merken. De ober probeert hen te vertellen wat er is gebeurd, maar ze begrijpen niets - ze zijn te ver van dit leven verwijderd.
En de oude man slaapt op dit moment en hij droomt van leeuwen.