Celou válku absolvoval ve funkcích náčelníků štábů různých frontů. Začal 10. července 1941 severozápadním operačním sektoru, kde se bojovalo o přístupy k Leningradu, pod velením Klimenta Vorošilova, jehož neschopnost se částečně projevila i na Zacharovově hodnocení. Naštěstí to na jeho kariéru nemělo velký vliv. Načas sloužil pod Šapošnikovem jako zástupce náčelníka generálního štábu pro logistiku, v závěru roku byl pak jmenován náčelníkem štábu před Moskvou bojujícího Kalininského frontu, kde působil celý rok 1942 a první část roku 1943. Před započetím bitvy v Kurském oblouku byl jmenován náčelníkem štábu Rezervního frontu, posléze přejmenovaného na Stepní front a později na 2. ukrajinský front. Zde sloužil nejprve pod Koněvem a od května 1944 pod Malinovským. Zúčastnil se osvobozování Ukrajiny, Moldávie, Rumunska a Maďarska.