הזקן סנטיאגו חי בכפר דייגים קטן בקובה ודגים לבד. בפעם האחרונה הוא בילה 84 ימים בים, אך לא תפס דבר. בעבר, ילד שמנולין נהג לדוג אתו, שעזר לזקן רבות, אך הוריו של הילד החליטו שסנטיאגו היה חסר מזל ואמרו לבנו לנסוע לים בסירה אחרת.
הזקן לימד את מנואלין לדוג, והילד אוהב את סנטיאגו, רוצה לעזור לו. הוא קונה לו סרדינים לפיתיון, מביא אוכל לצריף שלו. הזקן כבר מזמן הסתפק בעוניו.
הוא היה פשוט אופק מדי מכדי לחשוב עליו כאשר הגיעה אליו הענווה. אבל הוא ידע שהענווה הגיעה מבלי להביא לא בושה או אובדן של כבוד האדם.
הם מדברים עם הילד על דייג ושחקני בייסבול מפורסמים. בלילה, הזקן חולם על אפריקה בצעירותו, ו"אריות שהולכים לחוף ".
מוקדם בבוקר למחרת, הזקן יוצא לדוג. הילד עוזר לו לשאת את המפרש, להכין את הסירה. הזקן אומר שהפעם הוא "מאמין במזל".
בזה אחר זה הפליגו סירות דייג מהחוף ויוצאות לים. הזקן אוהב את הים, הוא חושב על זה ברוך, כאישה. לאחר שחיכה פיתיון, שוחה סנטיאגו באטיות בזרימה ומתקשר נפשית עם ציפורים ודגים. הרגיל לבדידות, הזקן מדבר בקול רם לעצמו.
לפני כן, לבד, שר; לפעמים שר אפילו בלילה, בשמירה, כשהלך על סירות מפרש גדולות או ציד צבים.
הזקן מכיר תושבים שונים באוקיינוס ומתייחס אליהם בעדינות רבה.
ראשית, סנטיאגו תופס מעט טונה. הוא מקווה שלצד עדר טונה יש דג גדול שאוהב את הסרדינים שלו. עד מהרה הבחין הזקן ברעד קל של חכה ירוקה וגמישה, המחליפה את חכה. קו החכה יורד, והזקן מרגיש את משקלו העצום של הדג הנושך.
הזקן מנסה להרים קו דיג עבה, אך הוא לא מצליח - דג גדול וחזק מושך איתו סירה קלה. הזקן מתחרט על כך שאין ילד איתו - הוא יכול היה להסיר את הפיתיון ממוטות אחרים בזמן שסנטיאגו נלחם בדגים.
זה לוקח כארבע שעות. הערב מתקרב. זרועותיו של הזקן מבוללות, הוא זורק את חוט הדייג על גבו ומניח תחתו שקית. עכשיו סנטיאגו יכול להישען על צלע הסירה ולהירגע מעט.
אי אפשר להשאיר אדם לבדו בגיל מבוגר ... עם זאת, זה בלתי נמנע.
לַיְלָה. הדג מושך את הסירה רחוק יותר מהחוף. הזקן עייף, אבל המחשבה על דג לא משאירה אותו לרגע. לפעמים הוא מרחם עליה - הדגים, כה גדולים, חזקים וישנים, חייבים למות כדי שיוכל להמשיך לחיות. סנטיאגו מדבר עם הדגים: "אני לא נפרד ממך עד שאמות."
כוחו של הזקן הולך ואוזל, והדג לא מתעייף. סנטיאגו אוכל טונה עם שחר - אין לו אוכל אחר. התכווצויות יד שמאל של הזקן. הזקן מקווה שהדג יצוץ ואז הוא יכול להרוג אותה בעזרת נבל. לבסוף, היער עולה, ודג מופיע על פני השטח. היא נשרפת בשמש, ראשה וגב סגול כהה ובמקום אפה חרב, כל עוד עטלף בייסבול. היא ארוכה מטר מהסירה.
לבדו, בים הפתוח, הוא היה מחובר היטב לדג כה גדול שמעולם לא ראה, עליו מעולם לא שמע עליו.
כשהוא מופיע על פני השטח, הדג שוב נכנס למעמקים, מושך את הסירה לאורך הדרך והזקן אוסף כוח לאחוז בה. הוא לא מאמין באלוהים, הוא קורא את אבינו.
עוד יום עובר. כדי להסיח את דעתו, הזכר נזכר במשחקי בייסבול. הוא נזכר כיצד מדד פעם את כוחו בבית מרזח בקזבלנקה עם גבר שחור עוצמתי, האיש החזק ביותר בנמל, איך ישבו יום שלם ליד השולחן, מבלי לאבד את ידיהם, ואיך סוף סוף השתפר ממנו. הוא השתתף בקטטות דומות לא פעם, ניצח, אך אחר כך השליך את העניין הזה, והחליט שהוא זקוק ליד ימין לדיג.
הקרב עם הדגים נמשך. סנטיאגו אוחז ביער בידו הימנית, בידיעה שכאשר הכוחות ייגמרו השמאל יחליף אותה, ההתכווצות בה עבר זמן רב. מקרל נתקל במוט דיג קטן. הזקן מחזק את כוחו בזה, אם כי דג זה חסר טעם לחלוטין. הוא מצטער על הדג הגדול, שאין לו מה לאכול, אך הנחישות להרוג אותה מכך אינה פוחתת.
זה כל כך טוב שאנחנו לא צריכים להרוג את השמש, הירח והכוכבים. מספיק שנסחט אוכל מהים והורג את אחינו.
בלילה, הדגים מגיעים לפני השטח ומתחילים לצעוד במעגלים, מתקרבים לסירה או מתרחקים ממנה. זהו סימן לכך שהדג עייף. הזקן מכין נבל שיסיים את הדג. אבל היא פוסעת הצדה. מעייפות מחשבות מתבלבלות בראשו של הזקן, וכתמים שחורים רוקדים לנגד עיניו. סנטיאגו אוסף את הכוח שנותר ומדביק את הנבל לדגים שבצד.
ואז הדג התעורר לחיים, למרות שהוא כבר הביא את המוות בפני עצמו - הוא התרומם גבוה מעל המים, כאילו מתהדר באורכו העצום ורוחבו, בכל יופיו ובעוצמתו.
כשהוא מתגבר על בחילה וחולשה, הזקן קושר דגים לצד הסירה ופונה לעבר החוף. כיוון הרוח אומר לו באיזו דרך לשחות כדי להגיע לבית.
עוברת שעה עד שמוצג הכריש הראשון, שהפליג לריח הדם. היא מתקרבת לירכתיים ומתחילה לקרוע את הדג בשיניה. הזקן מכה אותה עם נבל במקום הפגיע ביותר בגולגולת. היא שוקעת לקרקעית, גוררת נבל, חלק מהחבל וחתיכת ענק של דגים
סנטיאגו הורג שני כרישים נוספים עם סכין קשור לשוט. הכרישים האלה לוקחים איתם לפחות רבע מהדגים. בכריש הרביעי הסכין נשברת, והזקן מוציא מועדון חזק.
הוא ידע שכל דחיפת כריש על סירה פירושה חתיכת בשר קרוע וכי הדגים הותירו כעת חותם על הים, רחב ככביש מהיר, ונגיש לכל הכרישים בעולם.
קבוצת הכרישים הבאה תוקפת את הסירה לפני השקיעה. הזקן מגרש אותם עם מכות של אלות על הראש, אבל בלילה הם חוזרים. סנטיאגו נלחם עם טורפים תחילה עם שרביט, אחר כך עם שבר חד של המספר. לבסוף, כרישים שוחים משם: אין להם עוד מה לאכול.
הזקן נכנס למפרץ בצריף שלו בשעת לילה מאוחרת. לאחר שהסיר את התורן וקשר את המפרש, הוא נודד לבית, חש עייפות מדהימה. לרגע, הזקן מסתובב ורואה זנב ענק של דגים ושיקוף של רכס לבן מאחורי הירכתיים של סירתו.
ילד מגיע לבקתה של הזקן. סנטיאגו ישן. הילד בוכה כשהוא רואה את כפות ידיו הפצועות. הוא מביא את הזקן קפה, מרגיע אותו ומבטיח לנו כי מעכשיו הם יתאחדו יחד, כי עדיין יש לו הרבה מה ללמוד. הוא מאמין שהוא יביא מזל טוב לזקן.
בבוקר הדייגים נדהמים משרידי דג ענק. תיירים עשירים מגיעים לחוף. הם מופתעים לשים לב לעמוד שדרה ארוך וארוך עם זנב ענק. המלצר מנסה לספר להם מה קרה, אבל הם לא מבינים כלום - הם רחוקים מדי מהחיים האלה.
והזקן ישן בזמן הזה, והוא חולם על אריות.