В феврале 1918 года[1] Гарнич записался в Красную армию и служил красноармейцем в боевом отряде Петросовета 2-го подрайона. В мае был направлен на Уральский фронт, где с августа назначен командиром 1-й коммунистической Петроградской авто-самокатной роты 30-й стрелковой дивизии, которой командовал В.К. Блюхер. Воевал против войск адмирала А. В. Колчака на красноуфимском и кунгурском направлениях, под городами Красноуфимск и Пермь.
В январе — марте 1919 года после контузии находился в госпитале, затем назначен военкомом штаба 2-й Таращанской бригады в 1-ю Украинскую советскую дивизию под командованием Н.А. Щорса. С августа исполнял должность комиссара этой бригады. Воевал против петлюровцев под Проскуровом и Жмеринкой, а также с польскими легионерами, наступавшими на Новоград-Волынский, Сарны, Житомир и Коростень.
С октября 1919 по апрель 1920 года учился в Высшей школе штабной службы РККА в Москве[1]. После её окончания направлен в 57-ю стрелковую дивизию на Западный фронт и воевал с ней против белополяков старшим помощником начальника штаба по оперативной части, военкомом штаба дивизии, начальником разведки 169-й бригады.
20 августа 1920 года после разгрома дивизии был захвачен в плен и отконвоирован в Варшаву. С 20 октября находился в лагере военнопленных под Краковом. 11 апреля 1921 года на станции Негорелая по обмену военнопленными освобожден и по прибытии на родину назначен инспектором Инспекции Политуправления Республики.
С февраля 1922 года занимал должность комиссара Управления снабжения артиллерии особого назначения РККА, а с апреля был комиссаром Воздушного флота ПВО Петрограда и в Высшей теоретической школе авиации в городе Егорьевск. С января 1923 года находился на оперативной работе в ОГПУ в Москве и в Карелии.
В декабре 1938 года переведен на преподавательскую работу в Военную академию РККА им. М. В. Фрунзе и назначен преподавателем кафедры истории военного искусства.
С началом войны полковник Гарнич 2 июля 1941 года назначается командиром 14-й стрелковой дивизии народного ополчения Первомайского района Москвы, затем через неделю переводится командиром 269-й стрелковой дивизии, формировавшейся в районе городе Коломна. С 5 по 16 августа 1941 года дивизия была передислоцирована в район Брянска и с 16 августа включена в 3-ю армию, входившую в состав Центрального фронта (с 25 августа — Брянского фронта). 21 августа она была выдвинута в район города Почеп и 25 августа приняла первый бой. 27 августа 1941 года, находясь на НП 1018-го стрелкового полка, полковник Гарнич был тяжело контужен и эвакуирован в госпиталь.
После выздоровления 8 сентября он допущен к командованию 148-й стрелковой дивизией. 17 сентября Гарнич отстранен от исполнения должности и выведен в распоряжение Военных советов 3-й армии.
В ходе начавшейся Орловско-Брянской оборонительной операции в начале октября он назначается начальником гарнизона города Карачев. 5 октября во время уличных боев за город, выполняя приказ заместителя командующего войсками фронта генерал-лейтенанта М. А. Рейтера, взорвал занятый противником фронтовой склад ГСМ, получив при этом контузию, после чего был эвакуирован в тыл.
В начале февраля 1942 года зачислен в распоряжение Военного совета МВО, затем назначен врид заместителя начальника группы офицеров Генштаба Красной армии. С апреля исполнял должность начальника оперативного отдела и заместителя начальника штаба 41-й, а с 10 мая — 3-й резервной армий.
В июне 1942 года вновь направлен в распоряжение Генштаба Красной армии, где проходил службу старшим офицером при штабе 24-й армии. В этой должности участвовал в Сталинградской битве на Сталинградском и Донском фронтах.
После войны с 30 июля по декабрь 1945 года находился на лечении по болезни и в распоряжении ГУК НКО, затем был назначен старшим преподавателем кафедры истории военного искусства Высшей военной академии им. К. Е. Ворошилова.
2 марта 1951 года уволен в отставку по болезни.
На протяжении своей жизни активно занимался исследованием истории Отечественной войны 1812 года, автор целого ряда монографий и книг по военной истории, в том числе: «Осьмнадцатый» (1932), «Таращанцы» (1933), «Батько Боженко» (1933), «Бородинское сражение» (1949, стенограмма лекции, прочитанной 7.9.1948 г.), «Отечественная война 1812 года» (1951), «Штурм Измаила» (1952), «1812 год» (1956)[2].
Умер 18 ноября 1961 года, похоронен в Москве на Новодевичьем кладбище (Колумбарий, 121 секция)[3]
Приказы (благодарности) Верховного Главнокомандующего в которых отмечен Н. Ф. Гарнич[5]
За овладение штурмом городами Вормдитт и Мельзак — важными узлами коммуникаций и сильными опорными пунктами обороны немцев. 17 февраля 1945 года. № 282.
За овладение штурмом крепостью и главным городом Восточной Пруссии Кёнигсберг — стратегически важным узлом обороны немцев на Балтийском море. 9 апреля 1945 года. № 333
Великая Отечественная. Комдивы : военный биографический словарь / [Д. А. Цапаев и др. ; под общ. ред. В. П. Горемыкина] ; М-во обороны Российской Федерации, Гл. упр. кадров, Гл. упр. по работе с личным составом, Ин-т военной истории Военной акад. Генерального штаба, Центральный архив. — М. : Кучково поле, 2014. — Т. III. Командиры стрелковых, горнострелковых дивизий, крымских, полярных, петрозаводских дивизий, дивизий ребольского направления, истребительных дивизий (Абакумов — Зюванов). — С. 572—574. — 1102 с. — 1000 экз. — ISBN 978-5-9950-0382-3.