W 1951 zdał egzamin aktorski eksternistycznie w warszawskiej PWST.

Kariera Był aktorem Teatru Ziemi Opolskiej w Opolu (1949–1952), Teatru im. Wojciecha Bogusławskiego w Kaliszu (1952–1953), Teatru im. Stefana Jaracza w Łodzi (1953–1956) i Teatru Nowego w Łodzi (1956–1957). Przełomem w karierze okazał się angaż do Teatru Wybrzeże w Gdańsku (1957–1960), gdzie pracował z wybitnymi reżyserami, m.in. z Zygmuntem Hübnerem i Andrzejem Wajdą. Zagrał m.in. Raskolnikowa w Zbrodni i karze według Fiodora Dostojewskiego, Polo Pope’a w Kapeluszu pełnym deszczu Michaela Vincente Gazzo i szekspirowskiego Hamleta.

Z Gdańska trafił do Teatru Dramatycznego w Warszawie (1960–1966), który był wówczas jedną z wiodących scen stolicy. Tutaj stworzył kreacje w sztukach współczesnych (Sławomira Mrożka, Friedricha Dürrenmatta, Arthura Millera). Z Warszawą związał się do końca życia, występując kolejno w Teatrze Ateneum (1966–1974), Teatrze Powszechnym (1974–1982), Teatrze Na Woli (1982–1986) i Teatrze Nowym (1987–1988). Gościnnie pojawiał się także na scenach Teatru Współczesnego, Teatru Rozmaitości i Teatru „Komedia”.