W latach 1935–1938 studiował w Akademii Wojskowej im. Frunzego w Moskwie. W czerwcu 1938 roku aresztowany w ramach wielkiej czystki, ale zwolniony i formalnie przeniesiony do rezerwy. W grudniu 1940 roku powrócił do służby jako wykładowca taktyki na Wyższych Kursach Doskonalenia Szefów Sztabu.

W latach 1941–1944 walczył na frontach: Stalingradzkim, 2 Ukraińskim i 1 Białoruskim, m.in. jako szef sztabu 299 Dywizji Piechoty i 33 Gwardyjskiego Korpusu Piechoty w stopniu pułkownika. W marcu 1944 roku skierowany został w stopniu podpułkownika do Polskich Sił Zbrojnych w ZSRR: zastępca szefa sztabu Armii Polskiej ds. mobilizacyjnych, potem szef sztabu 1 Armii Wojska Polskiego.

2 listopada 1944 został awansowany na stopień generała majora Armii Czerwonej, a 3 listopada generała brygady przez Krajową Radę Narodową. Od marca 1945 roku pierwszy wiceminister Obrony Narodowej. 9 sierpnia 1945 Krajowa Rada Narodowa mianowała go generałem dywizji. Potem kolejno dowódca Okręgu Wojskowego: III Poznańskiego (1946–1948), I Warszawskiego (1948–1949), IV Śląskiego (1949–1956). Od 1952 do 1956 był posłem na Sejm PRL I kadencji.