Родился 13 (26) июля 1901 года в деревне Климово Георгиевской волости Солигаличского уезда Костромской губернии.
В 1936 окончил Военную академию имени М.В. Фрунзе.
Участник Великой Отечественной войны.
Особо отличился в ходе Могилёвской операции. Корпус под его командованием 24 июня 1944 года прорвал сильно укреплённую оборону противника северо-восточнее города Чаусы (Могилёвская область), форсировал реку Проня и захватил плацдарм на её правом берегу. В ходе наступления решительно и умело руководил частями и соединениями корпуса.
За умелое руководство корпусом и проявленные в боях с немецко-фашистскими захватчиками мужество и героизм Указом Президиума Верховного Совета СССР от 21 июля 1944 года генерал-майору Смирнову Дмитрию Ивановичу присвоено звание Героя Советского Союза с вручением ордена Ленина и медали «Золотая Звезда».
Умер 17 марта 1975 года.
Генерал-лейтенант (1945). Награждён 2 орденами Ленина (21.07.1944; 30.04.1945), 4 орденами Красного Знамени (15.04.1943; 3.11.1944; 29.05.1945; 15.11.1950), орденами Богдана Хмельницкого 1-й степени (10.04.1945), Суворова 2-й степени (16.09.1943), Кутузова 2-й степени (27.08.1943), Красной Звезды (31.12.1939), медалями, польским орденом «Крест Грюнвальда», другими иностранными наградами.