Film začíná na Štědrý den roku 1944 kdesi v Evropě. Je druhá světová válka. Crosby a Kaye hrají dva vojáky americké armády. Crosby hraje kapitána Boba Wallace a Kaye vojína první třídy Phila Davise. Bob je broadwayský bavič, Phil se chce stát profesionálním bavičem. Společně hrají píseň "White Christmas". Jejich velící důstojník, generálmajor Thomas F. Waverly, je zbaven velení. Přijde na konec představení a rozloučí se.
Po představení jsou všichni nuceni ukrýt se před leteckým bombardováním. Bomba převrhne zeď Wwall. Bob je příliš zaneprázdněn křičením rozkazů, než aby si toho všiml. Phil ho odstrčí z cesty a poraní si ruku. Bob později navštíví Phila v polní nemocnici a poděkuje mu za záchranu života. Phil ukáže Bobovi duet, který napsal, a požádá ho, aby s ním vystoupil v New Yorku. Bob se cítí zavázán Philovým hrdinstvím a souhlasí.
Po válce se Bob a Phil prosadí v nočních klubech, rozhlase a posléze na Broadwayi, kde se nakonec stanou úspěšnými producenty. Připravují svůj nejnovější muzikálový hit s názvem Playing Around. Téhož dne dostanou dopis od "Pihatého Haynese, kluka s psí tváří", jejich seržanta z války, který je žádá, aby se podívali na představení, které hrají jeho dvě sestry.
Jdou se podívat do klubu na vystoupení "sester". Phil si všimne, že se Bobovi líbí Betty, kterou hraje Rosemary Clooneyová. Philovi se líbí její sestra Judy, kterou hraje Vera-Ellen. Betty a Judy se připojí k Bobovi a Philovi u jejich stolu. Phil tančí s Judy. Phil a Judy si padnou do oka. Bob a Betty si nerozumějí. Mají menší hádku o tom, že Bob si myslí, že v showbyznysu má každý svůj úhel pohledu.
Judy a Betty míří do hotelu Columbia Inn v Pine Tree ve Vermontu, kde mají o prázdninách vystupovat. Kvůli neshodám s pronajímatelem musí dívky odjet. Phil poskytne sestrám svůj a Bobův pokoj na spaní ve vlaku. Zdržují šerifa tím, že napodobují dívky a zpívají jejich píseň "Sisters". Bob a Phil nastoupí později a Bob je nesmírně naštvaný, že musí zůstat celou noc v klubovém vagonu na cestě do New Yorku. Připojí se k nim Betty a Judy, které jim vřele poděkují za lístky a přesvědčí je, aby jeli s nimi do Pine Tree.
Když vlak dorazí do Pine Tree, není tam žádný sníh. Bob a Phil zjistí, že hostinec vede jejich bývalý velitel, generál Waverly. Waverly do chaty investoval všechny své úspory. Té se nedaří, protože není sníh ani hosté. Aby Bob a Phil přivedli do hostince kšefty, přivezou s sebou celé obsazení a štáb muzikálu Playing Around. Ke zkouškám přidají ještě Betty a Judy. Vztah Boba a Betty rozkvete a tráví spolu spoustu času.
Bob zjistí, že generálova žádost o návrat do armády byla zamítnuta. Bob zavolá Edu Harrisonovi, svému starému kamarádovi z armády. Ed je nyní úspěšným moderátorem varieté. Uspořádají televizní pozvánku pro všechny muže, kteří dříve podléhali generálovu velení, aby na Štědrý den přišli do hostince jako překvapení. Harrison navrhne, aby show odvysílali v celostátní televizi a udělali tak Wallaceovi a Davisovi bezplatnou reklamu. Bob trvá na tom, že to nesmí mít nic společného s jejich podnikáním.
Vlezlá hospodyně Emma Allenová poslouchá, ale slyšela jen tu část o bezplatné reklamě, nikoliv Bobovo odmítnutí nápadu. Myslí si, že její šéf bude v televizi vypadat jako politováníhodná postava, a řekne to Betty. Betty je v šoku. Nedorozumění způsobí, že Betty zmateného Boba ignoruje. Zatímco se tak děje, Judy nabývá přesvědčení, že Betty nikdy nenaváže vážný vztah, dokud se Judy nezasnoubí nebo nevdá. Naléhá na neochotného Phila, aby oznámil falešné zasnoubení, ale plán se zvrtne, když Betty náhle odjede do New Yorku, aby přijala pracovní nabídku.
Po skončení zkoušek Phil a Judy prozradí Bobovi, že zasnoubení bylo falešné. Bob stále nezná pravý důvod, proč Betty odešla. Odjíždí do New Yorku do The Ed Harrison Show. Snaží se Betty přesvědčit, aby se vrátila. Bob vidí Bettyino nové představení a řekne jí pravdu o zásnubách. Ed Harrison ho odvolá dřív, než zjistí, co ji skutečně trápí.
V hostinci Phil předstírá zranění, aby odvedl generálovu pozornost a neviděl vysílání Bobova oznámení. Ve vysílání Bob zve veterány 151. divize, aby přijeli na Štědrý den do Pine Tree ve Vermontu. Betty to uvidí v televizi a uvědomí si, že se mýlila. Vrátí se do Pine Tree včas na štědrovečerní představení, ale řekne to jen Judy. Celá divize přijíždí do Pine Tree tajně. Když generál vstoupí do chaty, přivítá ho jeho bývalá divize, která zazpívá strhující sbor "The Old Man". Jen co následující píseň skončí, začne padat sníh.
Ve finále si Bob a Betty vyznávají lásku. Stejně tak Phil a Judy. Pozadí scény je odstraněno, aby bylo vidět padající sníh. Bob, Betty, Phil a Judy hrají píseň "White Christmas". Všichni pozvednou sklenku a připijí si: "Ať jsou vaše dny veselé a jasné, ať jsou všechny vaše Vánoce bílé."