В основе сюжета лежит история о любви. Дмитрий Павлович Санин, которому недавно исполнилось 52 года, случайно обращает внимание на маленький крестик и погружается в воспоминания.
Когда Дмитрию было двадцать два года, судьба свела его с прекрасной девушкой. Перед возвращением домой герой решил побыть денёк во Франкфурте. Встреча состоялась в итальянской кондитерской. В помещении появилась темноволосая красавица и попросила о помощи. Санин пошёл за ней и увидел мальчишку, которому было плохо. Потерявший сознание оказался младшим братом незнакомки. Его имя Эмиль. Санин привёл мальчика в чувство, чем завоевал симпатию матери Эмилио и девушки. Спасителя в знак благодарности пригласили на ужин. Вечером его приходу обрадовались. Женщину звали Леонорой Розелли, прекрасную девушку — Джеммой. У них был слуга — старик Панталеоне. Ещё один член семьи — пудель Тарталья. Герой разочаровался, узнав о том, что Джемма любит некого Карла Клюбера, заведующего крупного магазина. Санин пробыл в гостях много времени и не успел на дилижанс. Денег почти не осталось. Он послал письмо с просьбой о помощи своему другу. Дима на несколько дней остался в городе в ожидании ответа. Утром Дмитрий встретился с Эмилио и Карлом Клюбером. Карл, поблагодарив спасителя, позвал его прогуляться в Содене. Эмиль подружился с Димой. Санин любовался Джеммой и успел поработать в кондитерской. Вечером вернулся в гостиницу, а наутро отправился на прогулку в Соден.
Неприятный инцидент случился на общей террасе за обедом. За соседним столиком сидели офицеры. Из этой компании подошёл к Джемме пьяный военный и, выпив за здоровье красавицы, схватил со стола розу возле её тарелки. Даму это оскорбило. Возмущённый Клюбер расплатился и повёл возлюбленную в гостиницу. Санин вызвал офицера на дуэль и произвёл впечатление на Джемму. Дуэль должен был состояться на пистолетах, но мужчины помирились — первый шаг навстречу миру сделал Донгоф, сознательно выстрелив в сторону. Джемма хотела бросить Клюбера. Фрау Леоне попросила Санина убедить Джемму остаться с женихом. Брак — единственный выход из бедственного материального положения семьи. Герой не смог её уговорить. Наоборот, Дмитрий и эта девушка поняли, что любят друг друга.
Фрау Леоне пустила слёзы, узнав об отношениях, но потом расспросила у Санина о его материальном положении и успокоилась. Санин собирался продать своё поместье, чтобы вложить средства в кондитерскую, но встретил по дороге знакомого. Знакомый предложил поговорить с его женой, богатой женщиной, и организовал встречу. Марья Николаевна, красивая барышня, соблазнила Дмитрия. Герой рассказал Джемме об измене. Он уже не мог контролировать собственные чувства по отношению к Марии, всегда следовал за ней, пока эта женщина не отрешилась от него. Санин не понимал, почему оставил любимую Джемму ради Марии. На память о Джемме у него остался лишь крестик. Покончив с воспоминаниями, Дмитрий приехал во Франкфурт, но не нашёл девушку. Оказалось, что Джемма живёт уже в Нью-Йорке, счастлива, родила пятерых детей. Санин отправил ей крестик и собрался уезжать в Америку.
Произведение учит читателя не поддаваться соблазнам и не менять истинную любовь на развлечения.