Proljeće 1924. Lev Glebovich Ganin živi u ruskom pansionu u Berlinu. Pored Ganina, matematičar Aleksej Ivanovič Alferov, čovjek "s tankom bradom i sjajnim natečenim nosom", "stari ruski pjesnik" Anton Sergejevič Podtjagin i Klara, "puna tijela, svi u crnoj svili, vrlo ugodne mlade dame", radeći kao daktilografkinja i zaljubljena, žive u pansionu. Ganina, kao i balerine Colin i Gornotsvetov. "Posebna nijansa, tajanstvena mimikrija" dijeli ih od ostalih članova zajednice, ali "iskreno govoreći, golubska sreća ovog bezopasnog para ne može osuditi".
Prošle godine, po dolasku u Berlin, Ganin je odmah pronašao posao. Bio je radnik, i konobar, i dodaci. Za odlazak iz Berlina ostalo mu je dovoljno novca, ali za to treba raskinuti s Lyudmilom, čija veza traje već tri mjeseca i umorna je od njega. Ali kako se slomiti, Ganin ne zna. Njegov se prozor otvara na željezničku prugu, pa je stoga "prilika za odlazak opsesivno zadirkivati." Najavljuje gospodarici da će otići u subotu.
Ganin saznaje od Alferova da u subotu stiže njegova supruga Mašenka. Ganin vodi Alferov k sebi kako bi mu pokazao fotografije svoje supruge. Ganin uči svoju prvu ljubav. Od ovog trenutka potpuno je uronjen u sjećanja na tu ljubav, čini mu se da je bio mlađi za točno devet godina. Sutradan, u utorak, Ganin najavljuje Ludmili da voli drugu ženu. Sada se može prisjetiti kako je prije devet godina, kad je imao šesnaest godina, oporavljajući se od tifusa u ljetnom imanju kraj Voskresenska, sebi stvorio žensku sliku s kojom se u mjesec dana u stvarnosti susreo. Mashenka je imala "kestenjastu pletenicu u crnom luku", "oči Tatarskog gorenja", tamnoputo lice, glas "mobilan, buran, s neočekivanim zvucima prsa". Maša je bila jako vesela, voljela je slatkiše. Živjela je u seoskoj kući u Voskresensku. Jednom se s dvoje prijatelja popela na vidikovce u parku. Ganin je razgovarao s djevojkama, dogovorili su se da idućeg dana odlaze na brod. Ali Mashenka je došla sama. Svakodnevno su se počeli susresti na onoj strani rijeke, gdje je na brdu stajao prazan bijeli dvorac.
Kad se olujne crne noći, uoči odlaska u Sankt Peterburg početkom školske godine, posljednji put sreo s njom na ovom mjestu, Ganin je vidio da su kapke jednog od prozora imanja zatvorene, a ljudsko lice pritisnuto je na staklo iznutra. Ovo je sin čuvara Ganin je razbio čašu i počeo "udarati kamenom pesnicom po mokrom licu".
Sutradan je otišao u Petersburg. Maša se u Petersburg preselila tek u studenom. Počelo je "snježno doba njihove ljubavi". Bilo ga je teško upoznati, dugo je lutanje po hladnoći bilo mučno, pa su se oboje prisjetili ljeta. Navečer su satima razgovarali telefonom. Sva ljubav zahtijeva privatnost, a nisu imali sklonište, njihove se obitelji nisu poznavale. Početkom nove godine Mashenka je odvedena u Moskvu. I čudno je: ovo razdvajanje bilo je olakšanje Ganinu.
Ljeti se Maša vratila. Pozvala je Ganin u vikendicu i rekla da njezin otac više nikada ne želi unajmiti vikendicu u Voskresensku i ona sada živi pedesetak kilometara odatle. Ganin je otišao do svog bicikla. Stigao već u mraku. Mashenka ga je čekala na vratima parka. "Ja sam tvoja", rekla je. "Radi što hoćeš sa mnom." Ali u parku su se čule čudne šuštanje, Mashenka je bila previše poslušna i nepomična. "Čini mi se da netko dolazi", rekao je i ustao.
S Mašenkom se upoznao godinu dana kasnije u seoskom vlaku. Sišla je na sljedeću postaju. Nikad se više nisu vidjeli. Tijekom rata Ganin i Mashenka nekoliko su puta razmjenjivali nježna pisma. Bio je u Jalti, gdje se "pripremala vojna borba", to je bilo negdje u Maloj Rusiji. Tada su izgubili jedno drugo.
U petak su Colin i Gornotsvetov, prigodom primanja zaruka, Klareinog rođendana, Ganinovog odlaska i Podtyaginova navodnog odlaska u Pariz, odlučili održati "proslavu" svojoj nećakinji. Ganin s Podtyaginom odlazi u policijsku upravu da mu pomogne oko vize. Kad se primi dugoočekivana viza, Podtyagin slučajno ostavlja putovnicu u tramvaju. Ima srčani udar.
Svečana večera je tužna. Podtyagin se opet razboli. Ganin popije piće već pijanom Alferovu i pošalje ga da spava, a on sam zamišlja kako će ujutro upoznati Mašu na stanici i odvesti je.
Spakirajući svoje stvari, Ganin se oprašta od dasaka koji sjede kraj kreveta umirućeg Podtyagina i odlazi do stanice. Preostaje sat vremena prije dolaska Mašenke. Sjeo je na klupu u parku u blizini stanice, gdje se prije četiri dana prisjetio tifusa, imanja i Mašinog nagona. Postepeno, "s nemilosrdnom jasnoćom", Ganin shvaća da je njegova veza s Mašom završila zauvijek. "Trajalo je samo četiri dana - ova četiri dana bila su možda najsretnija razdoblja u njegovom životu." Slika Mašenke ostala je s umirućim pjesnikom u „kući sjena“. A nema druge Mašenke i ne može je biti. Čeka trenutak kada brzi vlak koji dolazi sa sjevera prolazi duž željezničkog mosta. Uzeo je taksi, otišao na drugu stanicu i ukrcao se na vlak koji ide na jugozapad Njemačke.