2022
I Came By as Toby Nealey
2022
Find the Light as The Lifeguard
2022
Munich: The Edge of War as Hugh Legat
2021
The Trick as Sam Bowen
2020
Allied Forces: Making 1917 as Self
2019
1917 as Lance Corporal Schofield
2019
True History of the Kelly Gang as Ned Kelly
2019
A Guide to Second Date Sex as Ryan
2018
Where Hands Touch as Lutz
2018
To Provide All People as Father
2017
Marrowbone as Jack Marrowbone
2016
Narrated By as Bill Sipowitz
2016
Captain Fantastic as Bodevan Cash
2016
Neil Gaiman's Likely Stories (1 episode)
2016
11.22.63 as Bill Turcotte (8 episodes)
2015
The Outcast as Lewis Aldridge (2 episodes)
2015
Fuel to Fire as Tomas Gant
2013
Breakfast With Jonny Wilkinson as Jake Whittam
2013
Sunshine on Leith as Davy Henshaw
2013
How I Live Now as Eddie
2013
For Those in Peril as Aaron
2012
Private Peaceful as Tommo Peaceful
2012
The Best of Men as Private William Heath
2012
The Devil's Dosh as Marcus
2012
Birdsong as Private Douglas (2 episodes)
2011
French Exchange as Jack
2009
The Boys Are Back as Harry Warr
2008
Defiance as Aron Bielski
2007
The Old Curiosity Shop as Kit
2007
The Graham Norton Show as Self (1 episode)
2006
Tsunami: The Aftermath as Adam Peabody (2 episodes)
2006
Johnny and the Bomb as Johnny Maxwell (3 episodes)
2006
The Thief Lord as Riccio
2005
Footprints in the Snow as Nathan Hill
2002
Rose and Maloney as Young Calum (2 episodes)
1953
The Oscars as Self (1 episode)