Kevät 1924. Lev Glebovich Ganin asuu venäläisessä vierastalossa Berliinissä. Ganinin lisäksi matemaatikko Aleksei Ivanovitš Alferov, mies, jolla on "ohut parta ja loistava turvonnut nenä", "vanha venäläinen runoilija" Anton Sergejevitš Podtyagin ja Klara, "täyteläinen, kaikki mustassa silkissä, erittäin viihtyisä nuori nainen", työskentelevät konekirjoittajana ja rakastavat vierasmajaa. Ganina, samoin kuin balettitanssijat Colin ja Gornotsvetov. ”Erityinen varjossa, salaperäinen jäljitelmä” erottaa jälkimmäisen muista raja-alueista, mutta ”rehellisesti sanottuna ei voida tuomita tämän vaarattoman parin kyyhkynen onnea”.
Viime vuonna saapuessaan Berliiniin Ganin löysi heti työpaikan. Hän oli työntekijä, tarjoilija ja lisäominaisuuksia. Hänellä on tarpeeksi rahaa jäljellä Berliinissä, mutta tätä varten hän on hajotettava Ljudmilan kanssa, jonka parisuhde on jatkunut kolme kuukautta ja joka on hänestä kyllästynyt. Mutta miten murtaa, Ganin ei tiedä. Hänen ikkunansa avautuu rautatieraiteelle, ja siksi "mahdollisuus lähteä kiusaa pakkomielteisesti". Hän ilmoittaa emäntälle lähtevänsä lauantaina.
Ganin tietää Alferovilta, että lauantaina hänen vaimonsa Mashenka saapuu. Ganin johtaa Alferovia itseään näyttämään hänelle valokuvia hänen vaimonsa. Ganin oppii ensimmäisen rakkautensa. Siitä hetkestä lähtien hän on täysin uppoutunut tämän rakkauden muistoihin, hänelle näyttää olevan hänet nuorempi tarkalleen yhdeksän vuotta. Seuraavana päivänä, tiistaina, Ganin ilmoittaa Ludmilalle rakastavansa toista naista. Nyt hän voi muistaa, kuinka yhdeksän vuotta sitten, kun hän oli kuusitoista vuotta vanha, hän toipunut tyypin kuumeesta Voskresenskin lähellä sijaitsevassa kesäkeskuksessa ja loi itselleen naiskuvan, jonka hän tapasi todellisuudessa kuukaudessa. Mashenkalla oli ”kastanjapunos mustassa keulassa”, “tatarin palavat silmät”, tummannahkaiset kasvot, ääni “liikkuva, burry, odottamattomilla rintaäänillä”. Masha oli erittäin iloinen, rakasti makeisia. Hän asui maalaistalossa Voskresenskissä. Kerran kahden ystävänsä kanssa hän kiipesi puiston huvimajaan. Ganin puhui tytöille, he suostuivat veneilymään seuraavana päivänä. Mutta Mashenka tuli yksin. Joka päivä he alkoivat tavata joen puolella, jossa tyhjä valkoinen kartano seisoi kukkulalla.
Kun myrskyisä mustaa yötä, aattona lähtöä Pietariin kouluvuoden alkuun mennessä, hän tapasi hänet viimeksi tässä paikassa, Ganin huomasi, että yhden kartanon ikkunoiden ikkunaluukut olivat avautuneet ja ihmisen kasvot painettiin sisälle lasia vastaan. Tämä oli vartijan poika. Ganin mursi lasin ja alkoi lyödä "kivisellä nyrkillä märällä kasvoillaan".
Seuraavana päivänä hän meni Pietariin. Masha muutti Pietariin vasta marraskuussa. "Heidän rakkautensa lumi-aikakausi" alkoi. Oli vaikea tavata, pitkään kylmässä vaellus oli tuskallinen, joten molemmat muistivat kesän. Iltaisin he puhuivat tuntikausia puhelimessa. Kaikki rakkaus vaatii yksityisyyttä, ja heillä ei ollut suojaa, heidän perheensä eivät tunteneet toisiaan. Uuden vuoden alussa Mashenka vietiin Moskovaan. Ja se on outoa: tämä ero oli Ganinille helpotusta.
Kesällä Masha palasi. Hän soitti Ganinille mökille ja sanoi, että hänen isänsä ei koskaan haluaisi vuokrata mökkiä Voskresenskistä enää ja asuu nyt 50 mailia sieltä. Ganin meni polkupyörälleen. Saapui jo pimeässä. Mashenka odotti häntä puiston porteilla. "Minä olen sinun", hän sanoi. "Tee mitä haluat kanssani." Mutta puistossa kuuli outoja ryömiä. Mashenka oli liian oppivainen ja liikkumaton. "Minusta tuntuu, että joku on tulossa", hän sanoi ja nousi seisomaan.
Hän tapasi Mashenkan vuoden myöhemmin maajunassa. Hän lähti seuraavalta asemalta. He eivät koskaan nähneet toisiaan enää. Sodan aikana Ganin ja Mashenka vaihtoivat useita kertoja lempeitä kirjeitä. Hän oli Jaltassa, missä "sotilaallista taistelua valmisteltiin", se oli jossain Pikku-Venäjällä. Sitten he menettivät toisensa.
Perjantaina Colin ja Gornotsvetov ottavat kihloja, Klaran syntymäpäivää, Ganinin poistumista ja Podtyaginin oletettua lähtöä Pariisiin päättävänsä pitää "juhla" veljentytärään. Ganin Podtyaginin kanssa menee poliisiosastoon avustamaan häntä viisumilla. Kun kauan odotettu viisumi on saatu, Podtyagin jättää vahingossa passin raitiovaunuun. Hänellä on sydänkohtaus.
Juhlallinen illallinen on surullinen. Podtyagin taas sairastuu. Ganin antaa juo jo humalassa olevalle Alferoville ja lähettää hänet nukkumaan. Hän itse kuvittelee kuinka hän tapaa Mashan aamulla asemalla ja vie hänet pois.
Pakattuaan tavaransa, Ganin jättää hyvästit kuolleen Podtyaginin sängyssä istuville muukalaisille ja menee asemalle. Mashenkan saapumisesta on jäljellä tunti. Hän istuu penkillä puistossa lähellä rautatieasemaa, jossa neljä päivää sitten hän muisteli lavantauti, Mashaan kärjessä. Vähitellen "armottomalla selkeydellä" Ganin tajuaa, että hänen suhteensa Mashaan on päättynyt ikuisesti. "Se kesti vain neljä päivää - nämä neljä päivää olivat ehkä hänen elämänsä onnellisimpia aikoja." Mashenkan kuva pysyi kuolleen runoilijan varjojen talossa. Eikä ole toista Mashenkaa eikä voi olla. Hän odottaa hetkeä, jolloin pohjoisesta tuleva pikajuna kulkee rautatiesiltaa pitkin. Hän ottaa taksin, menee toiselle asemalle ja nousee junaan lounaaseen Saksaan.