Действие происходит в Москве зимой 1924/25 г. Профессор Филипп Филиппович Преображенский открыл способ омоложения организма посредством пересадки людям желез внутренней секреции животных. В своей семикомнатной квартире в большом доме на Пречистенке он ведет прием пациентов. В доме проходит “уплотнение”: в квартиры прежних жильцов вселяют новых – “жилтоварищей”. К Преображенскому приходит председатель домкома Швондер с требованием освободить две комнаты в его квартире. Однако профессор, позвонив по телефону одному из своих высокопоставленных пациентов, получает на свою квартиру броню, и Швондер уходит ни с чем.
Профессор Преображенский и его ассистент доктор Иван Арнольдович Борменталь обедают в столовой у профессора. Откуда-то сверху доносится хоровое пение – это проходит общее собрание “жилтоварищей”. Профессор возмущен происходящим в доме: с парадной лестницы украли ковер, заколотили парадную дверь и ходят теперь через черный ход, с калошной стойки в подъезде пропали разом все калоши. “Разруха”, – замечает Борменталь и получает в ответ: “Если я вместо того, чтобы оперировать, начну у себя в квартире петь хором, у меня настанет разруха!”
Профессор Преображенский подбирает на улице беспородного пса, больного и с ободранной шерстью, приводит его домой, поручает домработнице Зине кормить его и ухаживать за ним. Через неделю чистый и сытый Шарик становится ласковым, обаятельным и красивым псом.
Профессор проводит операцию – пересаживает Шарику железы внутренней секреции Клима Чугункина, 25 лет, трижды судимого за кражи, игравшего на балалайке по трактирам, погибшего от удара ножом. Эксперимент удался – пес не погибает, а, напротив, постепенно превращается в человека: прибавляет в росте и весе, у него выпадает шерсть, он начинает говорить. Через три недели это уже человек небольшого роста, несимпатичной наружности, который с увлечением играет на балалайке, курит и сквернословит. Через некоторое время он требует у Филиппа Филипповича, чтобы тот прописал его, для чего ему необходим документ, а имя и фамилию он уже себе выбрал: Полиграф Полиграфович Шариков.
От прежней собачьей жизни у Шарикова остается ненависть к котам. Однажды, погнавшись за котом, забежавшим в ванную, Шариков защелкивает в ванной замок, случайно выворачивает водопроводный кран, и всю квартиру заливает водой. Профессор вынужден отменить прием. Дворник Федор, вызванный для починки крана, смущенно просит Филиппа Филипповича заплатить за разбитое Шариковым окно: тот пытался обнять кухарку из седьмой квартиры, хозяин стал его гнать. Шариков же в ответ начал швырять в него камнями.
Филипп Филиппович, Борменталь и Шариков обедают; снова и снова Борменталь безуспешно учит Шарикова хорошим манерам. На вопрос Филиппа Филипповича о том, что Шариков сейчас читает, он отвечает: “Переписку Энгельса с Каутским” – и добавляет, что он не согласен с обоими, а вообще “все надо поделить”, а то “один в семи комнатах расселся, а другой в сорных ящиках пропитание ищет”. Возмущенный профессор объявляет Шарикову, что тот стоит на самой низшей ступени развития и тем не менее позволяет себе подавать советы космического масштаба. Вредную же книжку профессор приказывает бросить в печь.
Через неделю Шариков предъявляет профессору документ, из которого следует, что он, Шариков, является членом жилтоварищества и ему полагается комната в профессорской квартире. Тем же вечером в кабинете профессора Шариков присваивает два червонца и возвращается ночью совершенно пьяный в сопровождении двух неизвестных, которые удалились лишь после звонка в милицию, прихватив, однако, с собой малахитовую пепельницу, трость и бобровую шапку Филиппа Филипповича.
Той же ночью в своем кабинете профессор Преображенский беседует с Борменталем. Анализируя происходящее, ученый приходит в отчаяние от того, что он из милейшего пса получил такую мразь. И весь ужас в том, что у него уже не собачье, а именно человечье сердце, и самое паршивое из всех, которые существуют в природе. Он уверен, что перед ними – Клим Чугункин со всеми его кражами и судимостями.
Однажды, придя домой, Шариков предъявляет Филиппу Филипповичу удостоверение, из которого явствует, что он, Шариков, состоит заведующим подотделом очистки города Москвы от бродячих животных. Спустя несколько дней Шариков приводит домой барышню, с которой, по его словам, он собирается расписаться и жить в квартире Преображенского. Профессор рассказывает барышне о прошлом Шарикова; она рыдает, говоря, что он шрам от операции выдавал за боевое ранение.
На следующий день один из высокопоставленных пациентов профессора приносит ему написанный на него Шариковым донос, в котором упоминается и брошенный в печь Энгельс, и “контрреволюционные речи” профессора. Филипп Филиппович предлагает Шарикову собрать свои вещи и немедленно убираться из квартиры. В ответ на это одной рукой Шариков показывает профессору шиш, а другой вынимает из кармана револьвер… Через несколько минут бледный Борменталь перерезает провод звонка, запирает парадную дверь и черный ход и скрывается вместе с профессором в смотровой.
Спустя десять дней в квартире появляется следователь с ордером на обыск и арест профессора Преображенского и доктора Борменталя по обвинению их в убийстве заведующего подотделом очистки Шарикова П. П. “Какого Шарикова? – спрашивает профессор. – Ах пса, которого я оперировал!” И представляет пришедшим пса странного вида: местами лысый, местами с пятнами отрастающей шерсти, он выходит на задних лапах, потом встает на все четыре, затем опять поднимается на задние лапы и садится в кресло. Следователь падает в обморок.
Проходит два месяца. По вечерам пес мирно дремлет на ковре в кабинете профессора, и жизнь в квартире идет своим чередом.