Родился в семье железнодорожника. Окончил Ковровский техникум железнодорожного транспорта (Владимирской области) в 1954 году.
В 1954 - 1955 гг. работал начальником гаража строительного ж/д дороги участка дороги Кумертау - Тюрган (БАССР).
В 1955 году призван в Советскую Армию. Окончил Ташкентское танковое училище в 1958 году. Командовал танковыми взводом, ротой в Группе советских войск в Германии. Член КПСС с 1959 года. В 1965 году окончил Военную академию бронетанковых войск, назначен командиром танкового батальона в Киевском военном округе. с 1967 года — начальник штаба танкового полка, с 1970 года — командир танкового полка, с 1971 по 1973 годы — начальник штаба мотострелковой дивизии. в Киевском военном округе и Забайкальском военном округе.
В 1975 году окончил Военную академию Генерального штаба. С 1975 года — командир танковой дивизии в Прибалтийском военном округе. С 1977 года — первый заместитель командующего, а с 1979 года — командующий 8-й танковой армией в Прикарпатском военном округе. С июля 1980 года — командующий 2-й гвардейской танковой армией в Группе советских войск в Германии.
С марта 1984 года — первый заместитель Командующего войсками Группы советских войск в Германии. С февраля 1985 года — командующий войсками Белорусского военного округа. С января 1989 года — представитель Главнокомандующего Объединенных Вооружённых Сил государств — участников Варшавского договора в Национальной народной армии Германской Демократической Республики. С 1990 года — заместитель Министра обороны СССР - Главный инспектор Министерства обороны СССР . С 1991 года — начальник Высших офицерских курсов «Выстрел» имени Маршала Советского Союза Б. М. Шапошникова. С 1992 года — в запасе.
В настоящее время ведущий аналитик Службы генеральных инспекторов Министерства обороны России.
Кандидат в члены ЦК КПСС в 1986—1990 годах. Живёт в Москве. Активно участвует в политической жизни, член партии Справедливая Россия. Также несколько лет работает консультантом в Генеральном штабе ВС России.