Иван Михайлович Огнёв родился 5 марта 1902 года в посёлке Абрамовка (ныне — Таловский район Воронежской области). Русский.
После окончания церковно-приходской школы учился во второклассной школе, с 1920 года работал на комбинате.
В августе 1921 гола добровольно пошёл на службу в Красную Армию.
В 1923 году он окончил пехотные курсы.
В 1934 году был репрессирован, уволен из рядов Вооружённых Сил.
В августе 1936 гола освобождён, работал в Рязани.
Заочно учился в Рязанском педагогическом институте, работал учителем в средней школе.
В июне 1941 года мобилизован. Окончил курсы "Выстрел". С того же года — на фронтах Великой Отечественной войны. В боях был тяжело ранен.
К октябрю 1943 года командовал 764-м стрелковым полком Воронежского фронта. Отличился во время битвы за Днепр. 4 октября 1943 года полк Огнёва переправился через Днепр на плацдарм в районе села Лютеж Киевской области Украинской ССР. В боях за его удержание полк за два дня отразил шестнадцать немецких контратак. 6 ноября 1943 года в бою Огнёв получил тяжёлое ранение, но продолжал сражаться. Впоследствии в госпитале ему была ампутирована нога.
С августа 1944 года работал заведующим военной кафедрой Запорожского педагогического института.
Указом Президиума Верховного Совета СССР от 27 июня 1945 года за "мужество, отвагу и героизм, проявленные в борьбе с немецкими захватчиками" подполковник Иван Огнёв был удостоен высокого звания Героя Советского Союза.