Foster, who is the son of former Mansfield Town defender Colin Foster, began his career at Mansfield Town, where he made a handful of appearances before being released by the club. He later played for Conference sides Telford United and Woking, before returning to the Football League with Bristol Rovers in 1997. After five seasons with Bristol Rovers, in which he made 237 appearances in all competitions, Foster was released by new manager Ray Graydon in April 2002 as Bristol Rovers sought to reduce their wage bill after finishing next to bottom of Division Three. Foster joined Doncaster Rovers in August 2002 on a short-term deal and then agreed a contract until the end of the 2002–03 season in the following October. He made 21 league appearance as Doncaster reached the inaugural Conference play-offfinal and won promotion to the Football League in May 2003. His performances were rewarded with a one-year contract in June 2003 and a new two-year contract in February 2004. He made 44 league appearances in the 2003–04 season as Doncaster won a second successive promotion, and 34 league appearances in the 2004–05 season, which was interrupted by a serious ankle injury sustained in September 2004. He made a further 17 league appearances for Doncaster in the 2005–06 season, before leaving the club by mutual consent in January 2006 and joining Scunthorpe United until the end of the 2006–07 season. He made 62 league appearances in the 2005–06 and 2006–07 seasons as Scunthorpe won the League One championship in May 2007, and he took the Scunthorpe United's official Player of the Year award. Foster was offered a new contract at the end of the 2006–07 season, but opted to join Darlington where he was reunited with his former manager at Doncaster, Dave Penney, and was named as captain for the 2007–08 season. In late 2009, it was discovered that Foster had a clause written into his contract, that qualified him for a new contract with Darlington, if he was to make just one more league appearance for the club. Because of Darlington's financial constraints Foster was sidelined to avoid the new contract being activated. And on 1 March 2010 Foster left Darlington to sign for Conference North club Blyth Spartans. Foster returned to his roots by signing a one-year deal with Mansfield Town on 28 May 2010. On 31 May 2011, it was announced that Foster's contract would not be renewed. Foster now played for Spennymoor Town in the Northern Football League between 2011–2012. In February 2014 Foster got named assistant manager of Northern League side Whitley Bay FC.