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