Clark began his career as a trainee for Manchester United, but became homesick and signed for Sunderland in August 1999.
Sunderland
He made his Sunderland debut in a 2–1 Worthington Cup win away to Luton Town in September 2000. However, Clark saw his opportunities at Sunderland limited and he only made 11 appearances in his first three seasons and mainly found himself playing for the reserves. Despite the lack of appearances for his league side, Clark represented England as a defender up until under-20 level and he captained the under-19s. Mick McCarthy tipped Clark to play an important role in Sunderland's promotion campaign. However, he decided to let Clark look for new clubs to pursue his career. In the 2004–05 season, Clark was signed by Neale Cooper and moved to Hartlepool United.
Hartlepool United
Clark made his Hartlepool debut against Peterborough but a series of injuries disrupted his first season at the club and Clark found it difficult to gain a regular starting place in the team. He was commonly used as a utility player to cover injuries in defence and midfield. Despite this Clark went on to make 25 league appearances and 6 in cup competitions. In the 06–07 season played a key role as Hartlepool won promotion from League Two alongside Michael Nelson. The pair played a major part in an 18-game unbeaten run. Clark made 35 appearances in the 08/09 season but the arrival of Sam Collins meant that Clark was moved back into midfield. After losing his place in the side Clark spent much of the 09/10 as a substitute and was released at the end of the season.
Gateshead
On 14 June 2010, Clark signed for Conference National side Gateshead and was named captain on 10 August 2010, replacing Kris Gate. Clark made his debut for Gateshead on 14 August 2010 against Kettering Town. Clark scored his first goal for Gateshead on 22 February 2011 in a 4–1 win against Kettering Town at Rockingham Road. He made 53 appearances during his first season at the club, missing only 3 games, and won Gateshead's Player of the Year award. He agreed a new one-year contract with the club in May 2012 to cover the 2012–13 season. On 23 November 2015, Clark was named co-caretaker manager of Gateshead alongside Micky Cummins following the departure of manager Malcolm Crosby. At the beginning of the 2016/17 season, Clark became a dual registered player for both Gateshead and Northern League South Shields. He played four times for the Mariners, and then retired after suffering a groin injury in September 2016.