Действие повести происходит в Москве. Ранним летним утром разошлись пьяные гости, а хозяин дома, Елецкой, с раздражением осматривает следы бурного празднества в своём некогда роскошном, но ныне упадочном особняке. Открыв окно, он с внутренним враждебным настроем наблюдает за пробуждающимся городом, который одновременно близок и чужд ему больше, чем кому-либо. Осиротевший в юности, Елецкой быстро потерял интерес к светской жизни, которую считал скучной и пустой, и начал вести свободный распутный образ жизни, в котором преобладали скорее бурные мысли, чем истинное моральное падение, что лишь усилило его отчуждение от общества. После периода расточительства за границей он обосновался в Москве и взял в дом цыганку, что окончательно оттолкнуло его от светского круга. Во время гуляний в святую неделю под Новинским он встречает прекрасную и целомудренную девушку из общества, враждебно настроенного к нему, которая напоминает ему о юношеской мечте. Елецкой не представляется ей, но, полюбив страдание от своей любви, постоянно пытается видеть её на прогулках и в театре. Однажды на Тверском бульваре он поднимает уроненную ею перчатку, что тревожит её воображение. Однако их редкие встречи прерываются осенней непогодой и зимой. На одном из маскараде, где Вера должна присутствовать, Елецкой с надеждой приходит туда, интригует её, используя сведения о её тайных желаниях. В разговоре он называет себя «духом», постоянно следящим за ней, и вспоминает летний вечер на Тверском бульваре. Под давлением Веры он снимает маску, и в этот момент появляется другой человек с гневным выражением лица, угрожающий девушке. На следующий день Елецкой необычно взволнован и радостен, но замечает недовольство цыганки Сары, которая обвиняет его в любви к знатной даме. Елецкой напоминает ей о свободе, которую они обещали друг другу, а Сара жалуется на судьбу цыган, вынужденных служить прихотям чужих. Несмотря на это, он пытается утешить её, утверждая, что сам похож на изгнанника и потому тесно связан с ней. Однако отношения с Сарой давно перестали удовлетворять Елецкого: она скучна в разговорах, прерывает его, а он всё больше охлаждается к ней, тогда как Сара, не вполне понимая его сложные чувства, всё же привязывается к нему. Елецкой часто встречается с Верой на балах и вскоре открыто признаётся ей в любви. Вера, видевшая Сару на маскараде, спрашивает о ней, и Елецкой объясняет, что их связь была ошибкой и что он нуждается в другой. Вера молчит, но слова Елецкого оказывают на неё сильное влияние; впервые влюблённая, она счастлива, не подозревая о надвигающейся беде. Приближается Великий пост, и предстоящая разлука тяжело сказывается на обоих, хотя Вера старается скрыть чувства. Елецкой решает немедленно жениться на ней. Он приходит к Вере домой, где встречает её одну; неожиданное появление пугает девушку, она прогоняет его, но после упрёка в кокетстве Вера советует просить руки у дяди, заменяющего ей отца. Елецкой предупреждает, что тот не одобрит брак с человеком с дурной репутацией, поэтому предлагает тайно сбежать и венчаться. Вера сначала колеблется, но после угрозы разрыва соглашается. Вернувшись домой, Елецкой весёл, но у порога вспоминает о Саре. Он заранее решает, чтобы не оскорбить Веру новой встречей с цыганкой, ночью уехать из Москвы и обвенчаться в отдалённой деревне. Любовь Сары он считает расчётливой и продажной, но в душе испытывает упрёк. Однажды вечером Саре становится особенно плохо; старая цыганка приносит ей приворотное зелье. Елецкой сообщает Саре о предстоящей женитьбе и необходимости расстаться, обещая обеспечить её будущее. Сара принимает известие спокойно, отказывается от подарков и просит выпить в последний раз за своё здоровье. Её спокойствие удивляет Елецкого, он становится добрее и веселей, они пьют вместе. Сара открыто выражает сомнения в счастье Елецкого, говорит о своей надежде вернуть его любовь и жалуется на страдания, которые он ей причинил. В момент, когда Елецкой чувствует недомогание, Сара приписывает это приворотному зелью, радуется и проклинает Веру, обнимает Елецкого и замечает, что он мёртв. Вера безуспешно ждёт Елецкого ночью на улице, затем уезжает из Москвы и возвращается лишь спустя два года, оставаясь холодной и равнодушной. Сара сошла с ума и живёт в таборе, приходя в сознание лишь во время пения с цыганским хором.