Primavera de 1924. Lev Glebovich Ganin vive em uma pousada russa em Berlim. Além de Ganin, o matemático Alexei Ivanovich Alferov, um homem “de barba fina e nariz brilhante e inchado”, “um velho poeta russo” Anton Sergeyevich Podtyagin e Klara, “uma jovem encorpada, toda em seda preta, muito aconchegante”, trabalhando como datilógrafo e apaixonada, moram em uma casa de hóspedes. Ganina, assim como os bailarinos Colin e Gornotsvetov. “Um tom especial, imitação misteriosa” separa o último de outros hóspedes, mas “falando honestamente, não se pode condenar a felicidade dos pombos desse casal inofensivo”.
No ano passado, ao chegar a Berlim, Ganin imediatamente encontrou um emprego. Ele era trabalhador, garçom e figurantes. Ele tem dinheiro suficiente para deixar Berlim, mas para isso ele precisa terminar com Lyudmila, cujo relacionamento já dura três meses e está cansado dele. Mas como quebrar, Ganin não sabe. Sua janela se abre para os trilhos da ferrovia e, portanto, "a oportunidade de sair é provocadora obsessivamente". Ele anuncia à amante que partirá no sábado.
Ganin aprende com Alferov que no sábado sua esposa Mashenka chega. Ganin leva Alferov a si mesmo para mostrar-lhe fotografias de sua esposa. Ganin aprende seu primeiro amor. A partir desse momento, ele está completamente imerso nas lembranças desse amor, parece-lhe que ele era mais jovem exatamente por nove anos. No dia seguinte, na terça-feira, Ganin anuncia a Ludmila que ele ama outra mulher. Agora ele está livre para lembrar como, nove anos atrás, quando tinha dezesseis anos, ele, recuperando-se da febre tifóide em uma propriedade de verão perto de Voskresensk, criou uma imagem feminina para si, que conheceu na realidade em um mês. Mashenka tinha uma “trança castanha em um laço preto”, “olhos ardentes tártaros”, um rosto de pele escura, uma voz “móvel, enterrada, com sons inesperados no peito”. Masha era muito alegre, adorava doces. Ela morava em uma casa de campo em Voskresensk. Uma vez com dois amigos, ela subiu no mirante no parque. Ganin falou com as meninas, elas concordaram em ir de barco no dia seguinte. Mas Mashenka veio sozinho. Todos os dias eles começavam a se encontrar no lado do rio, onde havia uma mansão branca vazia em uma colina.
Quando em uma noite negra e tempestuosa, na véspera de partir para São Petersburgo no início do ano letivo, ele a encontrou pela última vez neste lugar, Ganin viu que as persianas de uma das janelas da propriedade estavam entreabertas e um rosto humano era pressionado contra o vidro por dentro. Este era o filho do vigia. Ganin quebrou o copo e começou a "bater com o punho de pedra no rosto molhado".
No dia seguinte, ele foi para Petersburgo. Masha se mudou para Petersburgo apenas em novembro. A "era da neve do amor deles" começou. Era difícil encontrá-lo, passear por muito tempo no frio era doloroso, então os dois se lembraram do verão. À noite, eles conversavam por horas no telefone. Todo amor requer privacidade, e eles não tinham abrigo, suas famílias não se conheciam. No início do ano novo, Mashenka foi levado para Moscou. E é estranho: essa separação foi um alívio para Ganin.
No verão, Masha voltou. Ela ligou para Ganin e disse que seu pai nunca mais iria querer alugar uma casa em Voskresensk e agora ela mora a 80 quilômetros de lá. Ganin foi à sua bicicleta. Já chegou no escuro. Mashenka estava esperando por ele nos portões do parque. "Eu sou sua", disse ela. "Faça o que quiser comigo." Mas barulhos estranhos foram ouvidos no parque, Mashenka era muito dócil e imóvel. "Parece-me que alguém está vindo", disse ele, e se levantou.
Ele se encontrou com Mashenka um ano depois, em um trem rural. Ela desceu na estação seguinte. Eles nunca mais se viram. Durante a guerra, Ganin e Mashenka trocaram várias vezes cartas gentis. Ele estava em Yalta, onde "uma luta militar estava sendo preparada", em algum lugar da Pequena Rússia. Então eles se perderam.
Na sexta-feira, Colin e Gornotsvetov, na ocasião de receber um noivado, o aniversário de Klara, a partida de Ganin e a suposta partida de Podtyagin para Paris, decidem fazer uma "celebração" para sua sobrinha. Ganin com Podtyagin vai ao departamento de polícia para ajudá-lo com um visto. Quando o visto tão esperado é recebido, Podtyagin acidentalmente deixa um passaporte no bonde. Ele tem um ataque cardíaco.
O jantar festivo é triste. Podtyagin novamente fica doente. Ganin dá uma bebida para o já bêbado Alferov e o manda dormir, e ele próprio imagina como encontrará Masha na estação de manhã e a levará embora.
Tendo arrumado as coisas, Ganin se despede dos pensionistas sentados ao lado do moribundo Podtyagin e vai para a delegacia. Falta uma hora para a chegada de Mashenka. Ele se senta em um banco no parque perto da estação, onde há quatro dias se lembrou da febre tifóide, da propriedade e do palpite de Masha. Gradualmente "com clareza impiedosa" Ganin percebe que seu caso com Mashenka terminou para sempre. "Durou apenas quatro dias - esses quatro dias foram talvez os momentos mais felizes de sua vida." A imagem de Mashenka permaneceu com o poeta moribundo na "casa das sombras". E não há outro Mashenka e não pode ser. Ele está esperando o momento em que um trem expresso vindo do norte passa pela ponte ferroviária. Ele pega um táxi, vai para outra estação e entra em um trem que vai para o sudoeste da Alemanha.