- Neighbours (1994-1996, 2016) as Troy Miller
- Stingers (1999-2000) as Dylan "Squizzy" Taylor
- Blue Heelers (2000-2005) as Constable Chris Riley
- Home and Away (2005-2008) as Zac MacGuire
- Underbelly (2008) as Reg Wright
- Rescue Special Ops (2009-2011) as Senior Sergeant Dean Gallagher
- Winners & Losers (2011-2014) as Rhys Mitchell
- The Secret Daughter (2016-2017) as Jamie Peters
Film:
- Love Serenade (1996) as Jamie
- The Dish (2000) as Gary Cunningham
- Walking on Water (2002) as Ryan Reynolds
- Ned Kelly (2003) as Dan Kelly
- The Extra (2005) as Ray "Raymo" Martin
- Wolf Creek (2005) as Chris
- The Marine (2006) as Sergeant Troy Barlow
- Rogue (2007) as Neil Kelly
- The Turning (2013) as Scott Hunter
Other projects:
- Ash vs Evil Dead (2015-2018) as Ash Williams (video game)
- The 100 (2014-2015) as Roan (web series)