Осенью 1920 года на севере Крыма группа беглецов спасалась от наступления Красной Армии. Среди них находились молодая петербургская дама Серафима Корзухина и молодой интеллигент Сергей Голубков, влюблённый в неё. В монастыре, где они укрывались, произошла встреча с белыми войсками, а одна из женщин оказалась переодетым генералом Чарнотой. Из-за действий генерала-картёжника красные уничтожили штаб, но Чарнота сумел скрыться, предложив всем бежать в Крым, где находилась белая армия. Серафима заболела тифом, и её помогла увести жена генерала — Люська.
В начале ноября 1920 года в Северном Крыму штаб белых возглавлял генерал Хлудов, ожидавший бронепоезд. В условиях наступления красных происходили напряжённые столкновения между генералами, а муж Серафимы, Корзухин, просил обеспечить перевозку пушного товара, но Хлудов приказал сжечь поезда, чтобы не дать их красным. Во время суматохи Серафима обвинила Хлудова в убийствах, за что её и Голубкова арестовали и отправили в Севастополь. Корзухин, испугавшись последствий, отрёкся от жены. Вестовой Чарноты был казнён по приказу Хлудова за критику командования.
В Севастополе Голубков, проходя допрос, был вынужден под страхом пыток дать ложные показания против Серафимы, после чего его отпустили. Сама Серафима, отвергнув эти обвинения, была защищена Чарнотой, угрожавшим оружием. Хлудов признавался в ненависти к главнокомандующему, а Корзухин, не желая спасать жену, решил уехать. Голубков пытался донести правду о преступлениях контрразведки, но узнал, что Серафиму якобы расстреляли. Позже выяснилось, что она жива и была вывезена Чарнотой в Константинополь, куда Голубков тоже отправился.
В Константинополе генерал Чарнота пытался выжить торговлей мелкими товарами, проигрывая на тараканьих бегах и испытывая тоску по родине. Люська, жена генерала и проститутка, упрекала его в проигрышах и нищете, после чего Серафима, узнав о тяжёлом положении, решилась пойти на панель. Голубков вновь встретил Серафиму, но она отвергла его любовь, считая, что должна погибнуть одна. Люська решила уехать в Париж, а Голубков пообещал заботиться о Серафиме и направился искать Корзухина.
В Париже Голубков обратился к Корзухину с просьбой помочь жене, но тот отрёкся от неё, заявив, что не имеет жены и собирается жениться на русской секретарше, принявшей французское гражданство. Чарнота также пытался добиться помощи, но безуспешно, выиграв у Корзухина крупную сумму в карты при поддержке секретарши Люськи.
Вернувшись в Константинополь, Голубков и Серафима, осознавшие бесплодность своего бегства, решили возвратиться в Россию. Хлудов, страдающий от психического расстройства и преследуемый призраками, также намеревался вернуться, несмотря на угрозу расстрела. Чарнота решил остаться с ним, но вскоре Хлудов покончил с собой.
Персонажи
Серафима Корзухина — жена товарища министра торговли, молодая, интеллигентная, до революции жила в Петербурге, брошена мужем на произвол судьбы.
Сергей Голубков — приват-доцент, сын профессора, молодой, интеллигентный, влюблён в Серафиму, не понимает, что происходит в России, ему кажется, что он видит сон.
Чарнота — белый генерал, бежит в Крым, где находятся белые.
Люська — любовница Чарноты, простая и отзывчивая, пытается выжить за счёт любовников.
Хлудов — белый генерал, нервный, дёрганный и больной, постепенно сходит с ума из-за мук совести.
Корзухин — высокопоставленный чиновник, богатый, жестокий, нечестный и трусливый.