Родился 24 июля 1788 года; происходил из дворян Санкт-Петербургской губернии, сын капитана Кавалергардского полка Петра Павловича Волкова от брака с Екатериной Павловной урождённой Гурьевой.
Образование получил в Пажеском корпусе, из которого выпущен 23 февраля 1805 года прапорщиком в лейб-гренадерский полк.
В рядах лейб-гренадерского полка Волков в 1805 году принимал участие в походе против французов в Австрию и сражался при Аустерлице, затем он в 1806—1807 годах был кампании против французов в Восточной Пруссии и принимал участие в боях при Гуттштадте, Гейльсберге и Фридланде. В 1808—1809 годах Волков сражался со шведами в Финляндии.
По возвращении в Россию Волков был назначен служить по ведомству военных поселений, в 1814 году произведён в полковники и в 1823 году — в генерал-майоры.
19 декабря 1829 года Волков за беспорочную выслугу 25 лет в офицерских чинах был награждён орденом св. Георгия 4-й степени (№ 4323 по кавалерскому списку Григоровича—Степанова).
В отставку вышел в 1838 году (по данным С. В. Волкова) или в 1840 году (согласно Фрейману). Скончался 23 сентября 1859 года в Санкт-Петербурге, похоронен на Волковом православном кладбище.
Его братья: