Absolwent krakowskiej PWST (1969 r.). Od 1971 roku aktor Narodowego Starego Teatru w Krakowie. Grał w najwybitniejszych inscenizacjach tego teatru. Współpracował z wybitnymi reżyserami polskiego teatru:
K. Swinarskim,
J. Jarockim,
J. Grzegorzewskim,
K. Lupą,
M. Grabowskim. Obecnie angażowany przez reżyserów najmłodszego pokolenia – M. Kleczewską, M. Zadarę, M. Borczucha. Zagrał ok. 100 ról w teatrze i teatrze telewizji. W filmie i telewizji współpracował z takimi reżyserami, jak:
A. Wajda,
K. Zanussi,
Laco Adamik,
F. Bajon,
A. Domalik,
K. Nazar. Także z reżyserami zagranicznymi –
Giacomo Battiato,
John Kent Harrison,
Marta Meszaros. Jest również pedagogiem krakowskiej szkoły teatralnej.