2024
Manhunt as Edwin Stanton (7 episodes)
2023
You Hurt My Feelings as Don
2022
Made in Oslo as Nicolas (8 episodes)
2020
Anne: The Princess Royal at 70 as Self - Narrator
2019
Modern Love as Van (1 episode)
2019
This Way Up as Richard (10 episodes)
2019
Game of Thrones: The Last Watch as Self
2018
King Lear as Duke of Cornwall
2018
The Terror as Captain James Fitzjames (10 episodes)
2016
Underworld: Blood Wars as Marius
2016
The Velvet Abstract as Narrator
2016
The Crown as Prince Philip, Duke of Edinburgh (20 episodes)
2016
The Circuit as Sasha
2016
The Night Manager as Geoffrey Dromgoole (6 episodes)
2015
Close Up with The Hollywood Reporter as Self (1 episode)
2015
Catastrophe as Dr. Harries (3 episodes)
2014
Groove is in the Heart as Mark
2014
Puppy Love (1 episode)
2014
Star Wars Rebels as Tiber Saxon (voice) (2 episodes)
2014
Outlander as Frank Randall (3 episodes)
2014
Outlander as Frank Randall / Jonathan 'Black Jack' Randall (30 episodes)
2014
The Honourable Woman as Nathaniel Bloom (8 episodes)
2014
Late Night with Seth Meyers as Self (1 episode)
2012
Secret State as Charles Flyte (1 episode)
2012
The Door as Man with the Wings of a Swan
2012
Simon Schama's Shakespeare (2 episodes)
2012
Eternal Law as Richard Pembroke (6 episodes)
2011
Black Mirror as Liam Monroe (1 episode)
2011
Hysteria as Mr. Squyers
2011
Forget Me Not as Will Fletcher
2011
The Shadow Line as Ross (Journalist) (7 episodes)
2011
The Shadow Line as Ross McGovern (5 episodes)
2011
Game of Thrones as Edmure Tully (10 episodes)
2010
Any Human Heart as Ian Fleming (2 episodes)
2010
Jackboots on Whitehall as Captain English / Monty (voice)
2010
The Deep as Raymond (5 episodes)
2010
Anton Chekhov's The Duel as Von Koren
2009
Getting On as Dr. Tom Kersley (3 episodes)
2009
Law & Order: UK as Samuel Cain (1 episode)
2008
Bonekickers as Scott Wilson (1 episode)
2008
Fairy Tales as Aidee (1 episode)
2007
The Relief of Belsen as Derrick Sington
2007
Kingdom as David Morston (1 episode)
2007
Persuasion as William Elliot
2007
Atonement as Naval Officer
2006
Pulling as Stefan (1 episode)
2006
Casino Royale as Villiers
2005
Pierrepoint: The Last Hangman as Lieutenant Llewelyn
2005
A Very Social Secretary as Keith
2005
Rome as Marcus Junius Brutus (22 episodes)
2005
The Thick of It as Simon Weir (1 episode)
2005
Doctor Who as Lieutenant Stepashin (1 episode)
2004
Piccadilly Jim as Reg 3
2004
Finding Neverland as Theater Patron 5
2003
Three Sisters as Tusenbach
2002
Foyle's War as Stanley Ellis (1 episode)
2002
Ultimate Force as Box 500 (3 episodes)
2002
Spooks as Andrew Lawrence (2 episodes)
2001
The Low Down as John
2000
Summer in the Suburbs as School Psychologist
2000
Longitude as Halley's Secretary (uncredited) (2 episodes)
2000
Longitude as Halley's Secretary
1997
Midsomer Murders as Jack Dorset (1 episode)
1996
Silent Witness as Greg Walker (2 episodes)
1986
Casualty as Frank Gallagher (7 episodes)