Окончив в 1906 году курс общих классов Пажеского корпуса перешел Николаевское инженерное училище и в 1909 году, закончив курс трёх классов его, был произведён в офицеры. Служил в лейб-гвардии Семёновском полку. Незадолго до начала Первой мировой войны поступил в Императорскую Николаевскую военную академию, но не успел ее окончить, так как вышел на войну в рядах своего полка.
В 1917 г. окончил старший класс 1-й очереди ускоренных курсов Николаевской военной академии. Капитан. Причислен к генеральному штабу.
В Добровольческой армии с конца 1918 г. Командовал батальоном Лейб-гвардии Семеновского полка в 1-м сводно-гвардейском полку. В Русской армии генерала Врангеля занимал должность старшего адъютанта штаба Донского корпуса генерала Абрамова. Вместе с Донским корпусом эвакуировался из Крыма — сначала в лагерь Чаталджа, около Константинополя, а затем на остров Лемнос. Прибыл с корпусом в Болгарию и до марта 1922 г. состоял на службе в штабе Донского корпуса в Стара-Загора, исполняя должность старшего адъютанта.
В 1924 г. переехал в Париж. Будучи отличным специалистом по Красной армии, Зайцов был привлечён председателем РОВС генералом А.П. Кутеповым к секретной работе. С 1928 года занимается преподавательской работой на зарубежных высших военно-научных курсах Н. Н. Головина.
Автор ряда работ по истории военного искусства и истории гражданской войны в России. Скончался от кровоизлияния в мозг 2 апреля 1954 в Париже. Был похоронен на русском кладбище в Сент-Женевьев де Буа.