Baryton, współpracuje z najważniejszymi scenami operowymi w Polsce, m.in. z Teatrem Wielkim  ̶  Operą Narodową w Warszawie, gdzie występował w „Umarłym Mieście” E. W. Korngolda (Frank/Pierrot), „Madame Butterfly” G. Pucciniego (Sharpless),  „Królu Rogerze” K. Szymanowskiego (Edrisi) oraz  „Halce” S. Moniuszki (debiut w roli Janusza) w reżyserii M. Trelińskiego. Wieloletni solista Opery Bałtyckiej w Gdańsku, gdzie występował w licznych spektaklach M. Weissa, takich jak „Carmen” G. Bizeta (Escamillo), „Eugeniusz Oniegin” P. Czajkowskiego (Oniegin), „Madame Curie” E. Sikory (Langevin), „Otello” G. Verdiego (Jago), „Cosi fan tutte” W. A. Mozarta (Guglielmo). Na deskach opery w Gdańsku zrealizował również głośną rolę w „Graczach” D. Szostakowicza w reż. A. Chyry oraz w „Ubu Rex” K. Pendereckiego w reż. J. Wiśniewskiego. Udany debiut w Operze Wrocławskiej w tytułowej roli „Eugeniusza Oniegina” przyniósł kolejne partie m. in. Zurga w „Poławiaczach pereł” G. Bizeta, Figaro w „Cyruliku Sewilskim” G. Rossiniego, Dandini w „Kopciuszku” G. Rossiniego, a także Escamillo, w widowisku operowym „Carmen”, przygotowywanym na Stadionie Śląskim we Wrocławiu dla 25-tysięcznej widowni. Współpracuje również z Teatrem Wielkim w Łodzi, gdzie występował jako Figaro w „Cyruliku Sewilskim” G. Rossiniego, Eisenstein w „Zemście Nietoperza” J. Straussa oraz Maksimilian w „Kandydzie” L. Bernsteina. W Operze i Filharmonii Podlaskiej – Europejskim Centrum Sztuki w Białymstoku imienia Stanisława Moniuszki wystąpił w dwóch produkcjach: „Cyganerii” G. Pucciniego (Marcello) oraz „Zemście Nietoperza” J. Straussa (Eisenstein). W OiFP pełni także funkcję konsultanta wokalnego.