Родился в семье крестьянина-бедняка.
В 1926 с семьей переехал в деревню Джогино (ныне Тайшетского района Иркутской области), работал в лесной промышленности рабочим, затем десятником и начальником лесопункта. Вступил в члены ВКП(б)/КПСС в 1941.
Перед войной был директором Оно-Чунского леспромхоза Красноярского края.
В марте 1942 был призван в армию. Воевал на Волховском, Юго-Западном и 3-м Украинском фронтах.
После окончания фронтовых курсов политработников был парторгом батальона.
Отличился в боях на Днестровском плацдарме.
Указом Президиума Верховного Совета СССР от 24 марта 1945 присвоено звание Героя Советского Союза.
С 1946 по 1961 год работал в лесозаготовительной промышленности Иркутской области (директором Шиткинского и Юртинского леспромхозов).
С 1962 — мастер лесозаготовок в Долгмостовском леспромхозе Красноярского края.
Умер 8 февраля 1968.
Награждён также орденом Красного Знамени, орденом Отечественной войны 1-й степени, орденом Красной Звезды и медалями.
На могиле Героя установлен памятник. 21 октября 2009 в селе Даппы была открыта мемориальная доска в честь героя Советского Союза Михаила Денисовича Капустина. 27 февраля 2015 школе села Даппы было присвоено имя Героя Советского Союза Капустина Михаила Денисовича.