Primăvara anului 1924. Lev Glebovici Ganin locuiește într-o pensiune rusă din Berlin. În afară de Ganin, matematicianul Alexei Ivanovici Alferov, un bărbat „cu barba subțire și cu un nas pufos strălucitor”, „un bătrân poet rus” Anton Sergeyevici Podtyagin și Klara, „o femeie plină de mătase neagră, o tânără foarte confortabilă”, care lucrează ca un dactilograf și îndrăgostit, locuind într-o pensiune. Ganina, precum și balerinii Colin și Gornotsvetov. „O nuanță specială, o mimică misterioasă” o separă pe cea din urmă de ceilalți consilieri, dar „vorbind sincer, nu se poate condamna fericirea porumbeilor acestui cuplu inofensiv”.
Anul trecut, la sosirea la Berlin, Ganin și-a găsit imediat un loc de muncă. A fost muncitor, ospătar și extras. A rămas destui bani pentru a părăsi Berlinul, dar pentru asta trebuie să se despartă de Lyudmila, a cărei relație se desfășoară de trei luni și este obosită de el. Dar cum să se despartă, Ganin nu știe. Fereastra lui se deschide pe calea ferată și, prin urmare, „oportunitatea de a pleca este tachinând obsesiv”. El anunță amantei că va pleca sâmbătă.
Ganin află de la Alferov că sâmbătă soseste soția sa Mashenka. Ganin îl conduce pe Alferov la sine pentru a-i arăta fotografiile soției sale. Ganin învață prima sa iubire. Din acest moment este cufundat complet în amintirile acestei iubiri, i se pare că era mai tânăr cu exact nouă ani. A doua zi, marți, Ganin o anunță pe Ludmila că iubește o altă femeie. Acum este liber să-și amintească cum, în urmă cu nouă ani, când avea șaisprezece ani, el, recuperându-se de febra tifoidă într-o moșie de vară din apropierea Voskresensk, a creat pentru sine o imagine feminină, pe care a cunoscut-o în realitate într-o lună. Mashenka avea o „împletitură de castan într-un arc negru”, „ochi arși de tătar”, o față cu pielea întunecată, o voce „mobilă, îngroșată, cu sunete neașteptate în piept”. Masha era foarte veselă, iubea dulciurile. Locuia într-o casă de țară din Voskresensk. Odată cu doi prieteni, a urcat în foișorul din parc. Ganin le-a vorbit fetelor, au fost de acord să meargă cu barca a doua zi. Dar Mashenka a venit singură. În fiecare zi au început să se întâlnească pe marginea râului, unde un conac alb alb stătea pe un deal.
Când într-o noapte neagră furtunoasă, în ajunul plecării spre Sankt Petersburg până la începutul anului școlar, el s-a întâlnit ultima dată cu ea în acest loc, Ganin a văzut că obloanele uneia dintre ferestrele moșiei erau întunecate și o față umană era apăsată pe geamul din interior. Acesta era fiul paznicului. Ganin a spart paharul și a început să „lovească cu un pumn de piatră pe fața lui umedă”.
A doua zi s-a dus la Petersburg. Masha s-a mutat la Petersburg abia în noiembrie. A început „epoca de zăpadă a iubirii lor”. Era dificil de întâlnit, rătăcirea la frig mult timp era dureroasă, așa că amândoi își aminteau vara. Seara, vorbeau ore întregi la telefon. Toată dragostea necesită intimitate, iar ei nu aveau un adăpost, familiile lor nu se cunoșteau. La începutul noului an, Mashenka a fost dus la Moscova. Și este ciudat: această separare a fost o ușurare pentru Ganin.
Vara, Masha s-a întors. A sunat-o pe Ganin la cabană și a spus că tatăl ei nu va dori niciodată să închirieze o cabană din Voskresensk și acum locuiește la cincizeci de kilometri de acolo. Ganin s-a dus la bicicleta ei. Ajunsi deja în întuneric. Mashenka îl aștepta la porțile parcului. - Eu sunt a ta, a spus ea. „Fă tot ce vrei cu mine.” Dar în parc s-au auzit niște foame ciudate, Mashenka era prea docilă și nemișcată. - Mi se pare că vine cineva, spuse el și se ridică.
S-a întâlnit cu Mashenka un an mai târziu într-un tren de țară. A coborât la următoarea stație. Nu s-au mai văzut niciodată. În timpul războiului, Ganin și Mashenka au schimbat de mai multe ori scrisori blânde. El a fost la Yalta, unde „se pregătea o luptă militară”, era undeva în Mica Rusie. Apoi s-au pierdut reciproc.
Vineri, Colin și Gornotsvetov, cu ocazia primirii unui logodnic, ziua de naștere a lui Klara, plecarea lui Ganin și presupusa plecare a lui Podtyagin la Paris, decid să organizeze o „sărbătoare” nepoatei sale. Ganin cu Podtyagin merge la departamentul de poliție pentru a-l ajuta cu viză. Când se primește viza mult așteptată, Podtyagin lasă accidental un pașaport în tramvai. Are un atac de cord.
Cina festivă este tristă. Podtyagin devine din nou bolnav. Ganin dă o băutură lui Alferov, deja beat, îl trimite să doarmă, el însuși își imaginează cum o va întâlni dimineața pe Masha la gară și o va duce.
După ce și-a împachetat lucrurile, Ganin își ia la revedere de la pensiunile care stau pe noptiera Podtyaginului muribund și se duce la gară. Mai rămâne o oră până ajunge Mashenka. Se așază pe o bancă din parcul din apropierea stației, unde în urmă cu patru zile și-a amintit de febra tifoidă, de moșie și de bătaia lui Masha. Treptat „cu o claritate nemiloasă” Ganin își dă seama că afacerea lui cu Mashenka s-a încheiat pentru totdeauna. "A durat doar patru zile - aceste patru zile au fost poate cele mai fericite perioade ale vieții sale." Imaginea lui Mashenka a rămas cu poetul muribund în „casa umbrelor”. Și nu există niciun alt Mashenka și nu poate fi. El așteaptă momentul în care trece un tren expres care vine din nord de-a lungul podului feroviar. Își ia un taxi, se duce la o altă stație și se urcă într-un tren care merge spre sud-vestul Germaniei.