Николай Фёдорович Волков родился 19 мая 1913 года в селе Григорово Российской империи, ныне Меленковского района Владимирской области, в семье мелкого лавочника. Русский.
С 1932 по 1938 годы учился в Горьковском индустриальном институте на кораблестроительном факультете. Здесь вступил в комсомол.
Перед войной жил в городе Самарканде (Узбекистан), работал инженером-механиком на заводе.
В действующей армии с июля 1941 года. В начале войны попал в плен, бежал. В последующих боях показал себя смелым и решительным командиром. Не раз вместе с кавалеристами ходил в разведку, не раз прямой наводкой отбивал яростные танковые атаки. В одном из боёв был ранен, но эвакуироваться в тыл отказался. Только затянулась рана — был ранен вторично. Пришлось временно распрощаться с фронтом.
Работал преподавателем военного училища, затем его назначили заместителем командира учебного артиллерийского полка. В конце 1943 года он снова на фронте.
Заместитель командира 1853-го истребительно-противотанкового артиллерийского полка кандидат в члены КПСС капитан Николай Волков в боях за город Яссы (Румыния) командовал артиллерийской группой сопровождения танков в составе 3 батарей. 20 августа 1944 года он первым во главе группы вместе с танками ворвался на улицы города и, захватив его центр, удерживал позиции до подхода стрелковых подразделений. Группа подбила 3 вражеских танка, 3 автомашины, 2 трактора, уничтожила большое число гитлеровцев, захватила трофеи. В рукопашной схватке Волков был тяжело ранен, скончался 23 августа 1944 года.
Похоронен в братской могиле города Яссы.