На одной из глухих московских улиц, в доме с колоннами, полном дворни, лакеев и приживалок, жила старая барыня — старая и богатая вдова, деспотичная, властная и жестокая самодурка. Дочери её давно вышли замуж, и барыня доживала последние годы уединённо. Самым заметным человеком в её доме был Герасим — дворник в доме барыни, глухонемой с рождения, высокий, могучий, добрый, верный, трудолюбивый. Барыня привезла его из своей деревни, где Герасим считался лучшим работником. Выросший на земле, Герасим долго тосковал и с трудом привык к городской жизни. Обязанности свои он исполнял исправно — окрестные воришки обходили дом барыни стороной. Дворня тоже побаивалась глухонемого, но Герасим их не трогал, считал за своих. Жил он в отдельной каморке над кухней. Прошёл год.
Барыня, имевшая неограниченную власть над дворней, решила женить своего башмачника. Тот был горьким пьяницей, но барыня считала, что после свадьбы он остепенится. В жёны ему она выбрала Татьяну и поручила дворецкому довести дело до свадьбы. Татьяна нравилась Герасиму. Дворник неуклюже ухаживал за ней, защищал от издёвок и ждал нового кафтана, чтобы в приличном виде прийти к барыне за разрешением жениться на Татьяне. Дворецкий долго раздумывал над проблемой: барыня жаловала Герасима, но какой муж из глухонемого, да и решение своё хозяйка не переменит. Боялся могучего дворника и «жених». Дворецкий втайне надеялся, что барыня забудет о своей прихоти, как уже бывало не раз, однако барыня спрашивала о свадьбе каждый день. Наконец дворецкий вспомнил, что Герасим терпеть не мог пьяных, и придумал хитрость: подговорил Татьяну притвориться хмельной и пройтись перед дворником. Хитрость удалась — Герасим отказался от Татьяны, и та вышла замуж за башмачника.
Прошёл ещё один год. Башмачник окончательно спился, и барыня отправила его с Татьяной в дальнюю деревню. Герасим подарил Татьяне красный платок, купленный для неё же год назад, и собрался её проводить, но на полпути повернул назад. Возвращаясь вдоль реки, Герасим увидел в воде тонущего щенка, выловил его, отнёс в свою коморку и выходил. Щенок вырос в «очень ладную собачку». Герасим назвал её Муму — это было единственное слово, которое он мог произнести. Муму всюду сопровождала глухонемого, сторожила двор по ночам и никогда не лаяла понапрасну. Дворня тоже любила умную собачку. Год спустя барыня выглянула в окно и заметила Муму.
В тот день на барыню нашёл «весёлый час» — она смеялась, шутила и требовала того же от своих приживалок. Те боялись такого настроения хозяйки: «эти вспышки у ней продолжались недолго и обыкновенно заменялись мрачным и кислым расположением духа». Муму понравилась барыне, и она велела привести её в покои, но испуганная собачка, забившись в угол, начала рычать на старуху и скалить зубы. Настроение у барыни быстро испортилось, и она велела увести Муму. Всю ночь барыня не спала и пребывала в мрачном расположении духа, а наутро заявила, что ей мешал заснуть собачий лай, и велела избавиться от Муму. Лакей продал собачку на рынке.
Герасим забросил свои обязанности и долго искал Муму и, не найдя, начал тосковать. Через сутки собачка вернулась к нему сама с обрывком верёвки на шее. Герасим успел сообразить, что Муму пропала по приказу барыни — жестами ему рассказали о происшествии в барских покоях. Он попытался спрятать собачку, но напрасно — ночью Муму залаяла, барыня устроила истерику, и дворецкий поклялся ей, что скоро собаки «в живых не будет». Дворецкий отправился к Герасиму и жестами передал ему приказ барыни. За его исполнение дворник взялся сам. Одев свой лучший кафтан, он сытно накормил Муму в трактире, затем взял лодку и выплыл на середину реки. Попрощавшись с единственным другом, Герасим обвязал шею Муму верёвкой с привязанными к ней кирпичами и бросил в воду. Вернувшись домой, Герасим быстро собрал вещи и ушёл пешком в родную деревню.
Он торопится, «как будто мать-старушка ждала его на родине, как будто она звала его к себе после долгого странствования на чужой стороне, в чужих людях». Через три дня Герасим уже был на месте, и староста с радостью его принял. В Москве же Герасима долго искали. Обнаружив бывшего дворника в деревне, барыня хотела выписать его назад, но передумала — «такой неблагодарный человек ей вовек не нужен». Герасим до сих пор бобылём живёт в своей ветхой избушке, на женщин даже не глядит и «ни одной собаки у себя не держит».