Происходил из шведского дворянского рода. Его дед (Максим Максимович, 1739—1800-е гг.) был выборгским и финляндским губернатором, отец (Иван Максимович, 1787—1863) был товарищем министра финансов, затем сенатором.
Учился во 2-й Санкт-Петербургской гимназии, затем в школе гвардейских подпрапорщиков, которую окончил в 1849 г. Служил в лейб-гвардии Преображенском полку, участвовал в походе полка к западным границам в 1849 г. в связи с событиями в Венгрии.
В 1856 окончил курс Николаевской академии Генерального штаба. С 1857 — в инспекторском департаменте, впоследствии преобразованном в Главный штаб.
Полковник (30.08.1861). В 1863 назначен начальником Военно-исторического и топографического архива, в 1866 преименованного в Военно-учёный архив. На этой должности оставался более 40 лет. С 1880 член Военно-учёного комитета Главного штаба. Генерал-майор (30.08.1881). Генерал-лейтенант (30.08.1891). Вышел в отставку 21 февраля 1906 с чином генерала от инфантерии.
Похоронен на Волковом православном кладбище.
Жена (с 1860) — Елизавета Ивановна (урождённая Аничкова) (?—1891). Сын — Иван Иванович (1877—1901), поэт (псевдоним Иван Коневской). Ещё трое детей умерли в раннем возрасте.
Автор многочисленных статей, посвящённых в основном военной истории России XIX в., опубликованных в журналах «Военный сборник» и «Русская старина» (например: ). Сотрудник «Энциклопедии военных и морских наук» Леера (250 статей) и «Энциклопедического словаря» Брокгауза и Ефрона (500 статей).