In 2010 he appeared as Alistair Ryle in Posh by Laura Wade at the Royal Court Theatre in London. In 2011, he played Charles Surface in Richard Brinsley Sheridan's The School for Scandal at the Barbican Theatre, directed by Deborah Warner. In 2015 he appeared as Horatio in a production of Hamlet at the same venue, alongside Benedict Cumberbatch in the title role.