Es un actor conocido por su papeles recurrentes en la series «Manifiesto» (2018-2021), donde interpretó a Ben Stone y «Tell Me a Story» (2018-2019), donde interpretó a Nick Sullivan.
Comenzó su carrera actoral en el teatro, pero fue hasta el 2010 que ganó reconocimiento internacional por su papel protagonista como el príncipe encantador, también conocido como David Nolan, en la exitosa serie de televisión de fantasía «Once Upon a Time» (2011-2018).
En 2011, interpretó al personaje principal en la película de terror «The Descent: Part 2». También tuvo papeles secundarios en películas como «Red Tails» (2012) y «Thor» (2011), donde interpretó a Fandral, uno de los Tres Guerreros de Asgard.
Además, ha participado en producciones en el West End londinense y en escenarios de Broadway. Algunas de sus obras teatrales incluyen «The Vertical Hour» y «A Christmas Carol».