George Bailey (James Stewart) wraz ze swoim wujem (Thomas Mitchell) kieruje budowlaną kasą oszczędności w małym miasteczku. Niemal całkowicie poświęca się pracy, pomagając potrzebującym w uzyskaniu własnego mieszkania. Niestety, tuż przed Bożym Narodzeniem wuj gubi osiem tysięcy dolarów, co może doprowadzić do zamknięcia kasy. Bailey załamuje się nerwowo i postanawia popełnić samobójstwo. W ostatniej chwili ocala go anioł stróż, który odsłania przed nim piękne aspekty życia... Studium człowieka, który rozstaje się ze swoimi marzeniami, godząc się z codzienną - ponurą rzeczywistością.
Akcja filmu rozpoczyna się w roku 1907, gdy rodzina Ekdahlów świętuje Boże Narodzenie. Głową rodu jest Helena, matka trzech synów - Oskara, Carla i Gustawa Adolfa. Wkrótce Oskar umiera, pozostawiając żonę Emilię oraz dwoje dzieci - córeczkę Fanny i syna Aleksandra. Niebawem Emilie ponownie wychodzi za mąż za protestanckiego pastora - człowieka niezwykle oschłego i surowego. Fanny i Aleksander cierpią z powodu braku miłości, lęku i osamotnienia. Terroryzowanym przez ojczyma dzieciom z pomocą przychodzi stary przyjaciel Heleny, Isaak Jakobi...
Jack Campbell (Nicolas Cage), bankier z Wall Street jest na samym szczycie kariery. Prowadzi luksusowe, niemal doskonałe życie. W wigilijną noc Jack przypadkowo trafia w sam środek napadu rabunkowego. Następnego ranka budzi się w towarzystwie dwójki dzieci bawiących się w jego łóżku. Obok niego, śpi Kate Reynolds (Téa Leoni), miłość z czasów studenckich, którą opuścił 13 lat temu w imię kariery zawodowej. Zakłopotany i przerażony odkrywa, że jego dotychczasowe życie przestało istnieć.