Knyga pasakoja apie seną žvejį Santjagą. Jis jau 84 dienas nieko nepagavo, tačiau nepraranda vilties to padaryti sekančią dieną. Jam ištikimai padeda Berniukas, bet tėvai jam uždraudė plaukti žvejoti su Seniu. Senis nuplaukia toli į jūrą ir jam užkimba milžiniška žuvis. Prasideda Senio ir Žuvies kova. Didžioji žuvis jį nutempia toli į jūrą. Taip plaukiant Senis mąsto apie daugelį dalykų, o žuvis jam pasidaro tarsi draugė. Vis dėlto jis priverstas progai pasitaikius ją nugalabyti. Jam grįžtant namo jį ir jo laivelį vienas po kito užpuola rykliai, nors senis ir stengiasi iš visų likusių jėgų nuo jų atsiginti, tačiau rykliai suėda beveik visą jo milžinišką laimikį ir į krantą senis grįžta tuščiomis. Vis dėlto jis yra laimingas, o tai jam svarbiausia.