Stephens ha iniziato la sua carriera cinematografica con il ruolo di Otello nel 1992, in Orlando di Sally Potter. Da allora ha fatto apparizioni regolari in televisione (tra cui in The Camomilla Lawn, 1992) e sul palco.
Ha interpretato il ruolo del protagonista in una produzione della Royal Shakespeare Company di Coriolano poco dopo la laurea da LAMDA; quella stessa stagione ha interpretato Claudio in Misura per misura per la RSC. Ha anche interpretato Stanley Kowalski in una produzione del West End di Tennessee Williams ‘ A Streetcar Named Desire, e Amleto nel 2004. È apparso a Broadway in Ring Round the Moon. Ha interpretato il ruolo principale nel film Fotografare le fate e ha interpretato Orsino nell’adattamento cinematografico di Trevor Nunn del 1996 della dodicesima notte di William Shakespeare. Nel 2002 ha assunto il ruolo di Gustav Graves nel film di James Bond Die Another Day. All’età di 33 anni, al momento dell’uscita del film, rimane l’attore più giovane ad aver interpretato un cattivo di Bond.
Nel 2005 ha interpretato il ruolo di un capitano dell’esercito britannico nel film indiano The Rising: Ballad of Mangal Pandey, che ritrae gli eventi della ribellione indiana del 1857. L’anno seguente tornò in India per interpretare un rinnegato ufficiale della Compagnia britannica delle Indie orientali in Sharpe’s Challenge. Alla fine del 2006 ha interpretato Edward Rochester nell’acclamato adattamento televisivo della BBC di Jane Eyre (trasmesso negli Stati Uniti su PBS all’inizio del 2007) e The Wild West nel febbraio 2007 per la BBC in cui ha interpretato il generale George Armstrong Custer in Last Stand di Custer.
Durante la metà del 2007, Stephens ha interpretato il ruolo di Jerry in un revival del tradimento di Harold Pinter sotto la direzione di Roger Michell. Nello stesso anno, Stephens ha anche interpretato Horner nel revival di Jonathan Kent di The Country Wife di William Wycherley. La pièce è stata la produzione inaugurale del Theatre Royal Haymarket Company, che oltre a Stephens comprende gli attori / attrici Eileen Atkins, Patricia Hodge, David Haig e Ruthie Henshall. Vari membri della compagnia sono tenuti a recitare in prossime produzioni al Teatro Haymarket con vari direttori artistici. La formazione della compagnia è considerata da molti critici teatrali londinesi una mossa audace per il teatro del West End.
Nel febbraio 2008, la Fox Broadcasting Company ha dato il via libera al cast di Stephens come protagonista di un potenziale show televisivo statunitense di un’ora, Inseparabili, prodotto da Shaun Cassidy. Presentato come una moderna storia di Jekyll e Hyde, lo spettacolo doveva presentare uno psicologo forense parzialmente paralizzato la cui altra personalità è un affascinante criminale. Il casting di Stephens era molto insolito, perché la Fox non aveva ancora approvato una sceneggiatura né acquistato un pilota per lo spettacolo. Tuttavia, a metà maggio 2008, The Hollywood Reporter ha annunciato che ” y il tempo la rete ha preso il pilota . . . aspetta Stephens era scaduto . . . .”
Nel maggio 2008, Stephens ha interpretato il ruolo di James Bond in una produzione della BBC Radio 4 di Dr. No di Ian Fleming, come parte della celebrazione del centenario della nascita di Fleming. Secondo quanto riferito, la produzione fu la prima drammatizzazione radiofonica della BBC del romanzo, sebbene Moonraker fosse alla radio sudafricana nel 1956, con Bob Holness che forniva la voce di Bond. Da allora è apparso in una serie di adattamenti di altri romanzi di James Bond.
Sempre nel maggio 2008, Stock-pot Productions ha annunciato che Stephens avrà il ruolo principale in un lungometraggio intitolato Fly Me, co-interpretato da Tim McInnerny. Stock-pot è stato anche il produttore di One Day, un cortometraggio del 2006 presentato ai festival cinematografici internazionali, in cui Stephens ha interpretato una piccola parte come capo del personaggio di McInnerny.
Il 5 ottobre 2008, Stephens è apparso sul palco del London Palladium come parte di un benefit intitolato “The Story of James Bond, A Tribute to Ian Fleming.”L’evento, organizzato dalla nipote di Fleming, Lucy Fleming, ha caratterizzato la musica da vari film di James Bond e le stelle del cinema di Bond che leggono dai romanzi di Bond di Fleming. Stephens ha preso la parte di James Bond stesso nelle letture.
All’inizio di dicembre 2008, Stephens ha letto da Coda, l’ultimo libro scritto dal suo buon amico Simon Gray, per BBC Radio 4. Gli estratti da cui Stephens lesse includevano la descrizione di Gray della sua partecipazione come padrino al battesimo del figlio di Stephens, Eli.
All’inizio del 2009, Stephens è apparso come Prince John nella stagione 3 della serie della BBC Robin Hood. La serie è andata in onda anche su BBC America negli Stati Uniti. Le apparizioni televisive più recenti di Stephens includono due episodi di una serie televisiva in sei parti, Strike Back, basata sul romanzo di Chris Ryan. La serie è andata in onda nel maggio 2010.
A metà del 2009, Stephens è tornato sul palcoscenico londinese nella produzione Donmar Warehouse di A Doll’s House di Ibsen al fianco di Gillian Anderson e Christopher Eccleston.
Nel 2010, ha recitato nel film per la televisione The Blue Geranium, un ulteriore sequel della serie televisiva e film basati sul personaggio di Miss Marple di Agatha Christie. Lo spettacolo è stato trasmesso negli Stati Uniti su PBS nel giugno 2010. Stephens ha anche recentemente recitato come un detective altamente egocentrico di fronte Lucy Punch in una serie televisiva commedia in tre parti per BBC Two dal titolo Vexed.
Stephens ha assunto un piccolo ruolo di supporto in un cortometraggio, The Lost Explorer, il debutto alla regia del fotografo Tim Walker. Il film è basato su un racconto dell’autore Patrick McGrath.
Nel frattempo, sul palcoscenico londinese nella primavera del 2010, Stephens ha ricevuto ottime recensioni per la sua interpretazione di Henry in un revival di The Real Thing di Tom Stoppard, diretto da Anna Mackmin all’Old Vic Theatre di Londra. Del debutto all’Old Vic, dove i suoi genitori si sono esibiti come parte della Royal National Theatre Company di Laurence Olivier, Stephens ha detto: “È abbastanza commovente per me fare qualcosa lì. Significa che ha un fascino aggiunto. Era un posto storico, ma non ho mai visto nulla quando erano lì, che è davvero triste, perché sono appena nato. Sono un grande ammiratore del lavoro di Stoppard.”
Nel 2010, Stephens è apparso come Georges Danton nella morte di Danton. Lo spettacolo fu un altro debutto per Stephens, questa volta al Royal National Theatre di Londra.
Nel corso degli anni, Stephens ha continuato a narrare in modo prolifico audiolibri e ad esibirsi in drammi radiofonici; negli ultimi tre anni, ha avuto una media di quattro o cinque spettacoli di questo tipo all’anno. Nel gennaio 2011, Stephens si è unito ad altre stelle nel narrare parti della Versione di Re Giacomo della Bibbia per BBC Radio 4 come parte di una celebrazione del 400 ° anniversario della pubblicazione della Bibbia. Stephens ha interpretato il ruolo di Philip Marlowe di Raymond Chandler in un serial radiofonico, che ha debuttato nel febbraio 2011. Stephens narrato un altro audiolibro, Paul Temple e il mistero di Ginevra, pubblicato nel febbraio 2011.
Dal 2014 al 2017, Stephens ha interpretato il capitano James Flint nella serie televisiva Starz Black Sails, un prequel di Treasure Island ambientato all’inizio del xviii secolo durante l’età d’oro della pirateria.
Nel 2016, è stato lanciato come l’ex primo ministro britannico Tony Blair nel film The Journey che ha visto Timothy Spall nel ruolo di firebrand preacher e l’eventuale primo ministro dell’Irlanda del Nord Ian Paisley con Colm Meaney nel ruolo di Martin McGuinness. Anche John Hurt ha recitato.
Nel 2018, appare come John Robinson in Lost in Space, il remake Netflix della serie TV del 1965.