Generał dywizji. W latach 2004-2005 był dowódcą III zmiany Wielonarodowej Dywizji Sił Stabilizacyjnych Centrum-Południe w Iraku. W latach 2005-2006 – zastępca dowódcy wojsk lądowych w Dowództwie Wojsk Lądowych w Warszawie.
W okresie 1967 - 1973 zajmował stanowiska służbowe do dowódcy batalionu włącznie. Po uzyskaniu tytułu oficera dyplomowanego pracował w Inspektoracie Szkolenia Ministerstwa Obrony Narodowej jako starszy oficer operacyjny. W latach 1980 - 1984 dowódca 28 pułku zmechanizowanego w Kołobrzegu. W 1981 roku został awansowany do stopnia podpułkownika . W latach 1984 - 1986 Szef Sztabu 20 Dywizji Pancernej w Szczecinku w Pomorskim Okręgu Wojskowym. W 1985 roku awansowany do stopnia pułkownika. W latach 1986 - 1988 studiował w Akademii Sztabu Generalnego Układu Warszawskiego w Moskwie, a następnie pełnił obowiązki Zastępcy Szefa Zarządu Operacyjnego Sztabu Generalnego Wojska Polskiego. W latach 1990 - 1994 dowodził 12 Dywizją Zmechanizowaną. W 1992 roku awansowany do stopnia generała brygady. W latach 1994 - 1999 Szef Zarządu Mobilizacji i Uzupełnień oraz Szef Zarządu Programowania Szkolenia w Sztabie Generalnym Wojska Polskiego. Od kwietnia 1997 roku do kwietnia 1999 roku był Szefem Polskiej Misji w NNSC - Panmunjon, Korea. Od czerwca 1999 roku do czerwca 2002 Asystent Szefa Sztabu do spraw operacyjnych w Połączonym Sztabie Wojsk Lądowych NATO Europy Centralnej (Heidelberg, Niemcy). W trakcie służby w NATO przez okres sześciu miesięcy oddelegowany na stanowisko Asystenta Szefa Sztabu do spraw operacyjnych w Kosowie (Kwatera Główna KFOR w Pristinie). Od 01.08.2002 Szef Generalnego Zarządu Rozpoznania Wojskowego Sił Zbrojnych RP. Od sierpnia 2002 roku ponownie Szef Polskiej Misji w NNSC - Panmunjon, Korea. 15 sierpnia 2003 roku awansowany do stopnia generała dywizji. 18 lipca 2004 przejął dowództwo nad Wielonarodową Dywizją Centrum-Południe w Iraku. 7 lutego 2005 roku oddał je generałowi dywizji Waldemarowi Skrzypczakowi.