Po vojenské službě studoval DAMU a v posledním ročníku byl v angažmá Národního divadla. Následovalo sedmileté účinkování v Činoherním studiu Ústí nad Labem, kde ztvárnil řadu rolí, například Žvankina v Hráčích od N.V. Gogola, Oresta v Sofoklově Elektře, Horatia v Hamletovi nebo titulní roli v Čechovově Ivanovovi. Poté byl deset let členem souboru Divadla Komedie.
K filmovým rolím patří postava Tomáše Sýkory ve snímku Pouta (2010), policejního vyšetřovatele ve filmu Rodina je základ státu (2011). V roce 2012 hrál ve filmu Jana Hřebejka Odpad město smrt a objevil se v roli prezidenta Edvarda Beneše v TV seriálu o historicky významných událostech Československa České století (2013). V roce 2014 se představil v celovečerním debutu Ondřeje Sokola Krásno. V roce 2017 sehrál roli Jindřicha v Hřebejkově filmové trilogii Zahradnictví (Rodinný přítel, Nápadník, Dezertér), líčící osudy jedné rodiny od protektorátu přes osvobození až po počátky komunistické vlády.
Na svém kontě má i řadu ocenění. Cenu Alfréda Radoka obdržel hned dvakrát, a to roku 2006 v kategorii nejlepší mužský herecký výkon za titulní roli v představení Světanápravce a v roce 2007 za roli Josefa K. v inscenaci Kafkova Procesu. V roce 2015 získal Cenu české filmové kritiky za roli ve filmu Krásno.