הארי פוטר (דניאל רדקליף) מוצא את עצמו במאבק גורלי נגד לורד וולדמורט (רייף פיינס), כשהוא יחד עם רון וויזלי (רופרט גרינט) והרמיוני גריינג'ר (אמה ווטסון) יוצאים למסע מסוכן במטרה לאתר ולהשמיד את ההורקרוקסים – פריטים קסומים שבהם וולדמורט הטמין חלקים מנשמתו כדי להשיג אלמוות. במהלך המסע הם מגלים את סודות האוצרות המוות, שלושה פריטי קסם רבי עוצמה שמחזיקים מפתח לניצחון או להרס. במקביל, וולדמורט שולח את אוכלי המוות שלו לתקוף את הוגוורטס, בניסיון להשתלט על בית הספר ולחסל את כל המתנגדים לו.
כשארי וחבריו חוזרים להוגוורטס, מתחיל הקרב הגדול בין כוחות האור לכוחות האופל. תלמידים, מורים ומורדים מתאחדים במאבק עיקש מול אוכלי המוות, כשפרופסור סוורוס סנייפ (אלן ריקמן) ופרופסור אלבוס דמבלדור (מייקל גמבון) ממלאים תפקידים מרכזיים במאבק. הקרבות מתגברים, והארי מתמודד עם פחדיו העמוקים ביותר, עם גורלו ועם ההכרח להקריב את עצמו כדי להביס את וולדמורט ולהגן על העולם הקסום. הקרב הסופי בין הארי ללורד וולדמורט הוא לא רק מאבק על כוח אלא גם על אמונה, חברות ונחישות. הארי מגלה כי הוא עצמו מהווה הורקרוקס בלתי מודע, מה שמוביל אותו להקריב את חייו כדי להשמיד את החלק הזה מנשמתו. בזכות אומץ לבם של חבריו ותושבי הוגוורטס, וולדמורט מובס בקרב דרמטי שמסיים את תקופת האופל. המאבק על הוגוורטס והאוצרות המוות מגיע לשיאו, כשהבחירות והמעשים של הגיבורים קובעים את עתיד עולם הקוסמים לעד.
