Родился 9 января 1947 года в городе Трускавце Львовской области Украинской ССР. Окончил Ленинградское высшее общевойсковое командное училище (1970, с отличием), Академию имени Фрунзе (1980), Академию Генштаба (1990, с золотой медалью).
Служил командиром мотострелкового взвода и роты, офицером оперативного отдела штаба 28-й общевойсковой Краснознаменной армии (Гродно) Белорусского военного округа. С 1974 года — офицер оперативного отдела штаба армии Группы советских войск в Германии. С 1979 года — старший офицер оперативного отдела штаба 6-й общевойсковой армии (Петрозаводск), старший офицер оперативного управления штаба Ленинградского военного округа. В 1982-1988 годах — в главном оперативном управлении Генштаба вооруженных сил СССР: старший офицер-оператор, начальник группы. С 1990 года — офицер для особых поручений замминистра обороны СССР генерал-полковника Владислава Ачалова, заместитель начальника, начальник направления главного оперативного управления Генштаба. С 1993 года — начальник штаба Группы российских войск в Закавказье. С июня 1995 года — начальник управления, заместитель начальника главного оперативного управления Генштаба.
В июне 1996 года стал и. о. начальника главного оперативного управления Генштаба, в августе 1997 года утвержден в этой должности. Одновременно был первым заместителем начальника Генштаба Анатолия Квашнина. В августе 2001 года покинул пост главы управления, оставшись первым заместителем начальника Генштаба.
С 19 июля 2004 года — первый заместитель министра обороны Сергея Иванова — начальник Генштаба. Подготовил план военной реформы, который так и не был реализован. В июне 2008 года покинул пост главы Генштаба. С 3 июня 2008 года по 9 января 2012 года — заместитель секретаря Совета безопасности России Николая Патрушева. В последнее время занимал пост советника главкома внутренних войск МВД Николая Рогожкина.
Генерал армии. Награжден орденами "За заслуги перед Отечеством" II, III и IV степени, "За военные заслуги", "За службу Родине в ВС СССР" III степени, орденом Почета, медалями. Женат, сын Андрей — юрист, дочь.