He started his career at Manchester United where he played one game in the League Cup against Crewe Alexandra, before moving down the ladder to join Blackpool.
[4] On 7 July, Marsh had a trial at Bury, scoring in each of the teams pre-season friendlies at Stockport County, Radcliffe Borough and at home to Huddersfield.
[7][8] On 22 December 2008, he made his first appearance for Leigh Genesis, scoring one goal in their 3–2 away loss in the Lancashire FA Challenge Trophy second round against Radcliffe Borough.
[18] On 10 May 2012, Marsh joined Forest Green Rovers on a free transfer, signing a two-year contract with the Conference National club.
[20] After finding his first-team opportunities limited at Forest Green Rovers, he joined Hereford United on a one-month loan deal on 5 October 2012.
[21] On 31 January 2013, Marsh and Forest Green came to a mutual agreement to terminate his contract early and he left the club.
[24] He made his club debut in the opening league match of the season on 16 August as Salford beat Scarborough 4–1.
He was released in December, and in January 2017 he joined North West Counties Football League side Runcorn Town.