Williams joined Sunderland for a fee of £50,000 in October 1996, and made over 250 appearances for the team, 108 of which were in the FA Premier League. The highlight of his career so far was probably when he scored the winning goal for Sunderland at Middlesbrough, his hometown club, in 1997, effectively relegating the Teessiders. Williams was also a part of the 1998 First Division Play-Off defeat at Wembley Stadium, in which Sunderland were beaten by Charlton Athletic 7–6 on Penalties after a 4–4 draw in regular play.
Cardiff City
Williams joined Cardiff City on a month-long loan in September 2004, with a view to a permanent move if he impressed. He played in all five of Cardiff's games during his initial loan period and his stay was extended for another two months. After he was told by Sunderland manager Mick McCarthy his contract would not be extended, Williams made his move to Ninian Park permanent in December 2004 on a free transfer.
Hartlepool United
Williams was offered a new contract by Cardiff manager Lennie Lawrence, but when he was replaced by Dave Jones, the offer was withdrawn. Instead he returned to the north-east to join League One side Hartlepool United. While at Hartlepool, Williams played the majority of the first team's games due to the injury of captainMicky Barron, but when Barron returned he was moved to the bench. The team was relegated in his first season at Hartlepool, but helped them earn instant promotion back to League One in 2006–07 as they missed out on the title on the last day of the season.
Bradford City
He was released by Hartlepool in May 2007 and joined Bradford City in July 2007. He was one of six new players who made their debut for City on the opening day of the 2007–08 in a 1–1 draw with Macclesfield Town. Williams lost his place at right back to loan signing Ben Starosta, who replaced Williams at half-time in a game against Wrexham in January 2008. Williams missed seven games until he won his place back against Stockport County when Starosta fell ill. On 29 April 2008, Williams was deemed to be surplus to requirements at Valley Parade and was released by manager Stuart McCall along with 13 other Bradford players.
Dundee
Williams joined Scottish Football League First Division side Dundee, where his former Sunderland teammate Alex Rae was manager, on trial in July 2008 and played for them in their opening game of the 2008–09 season as they defeated Ross County 2–1. Following another one-goal victory, Williams signed a one-year contract with Dundee. At the end of the 2008–09 season he was told he was free to look for another club by manager Jocky Scott.
Gateshead
Williams was to join Conference National team Gateshead on 28 August 2009, but the deal was called off as he still had hopes of a return to the professional ranks and would have been unable to do so until January, even if joining Gateshead on a non-contract basis. He subsequently signed for the Conference National outfit on 26 September 2009. Williams made his debut the same day in the 1–0 home defeat against Oxford United. Williams was released by Gateshead on 16 February 2010.
Gainsborough Trinity
Williams joined Conference North team Gainsborough Trinity on a contract until the end of the 2009–10 season on 12 March. Williams was released in the summer of 2010, only to be re-signed in September. He eventually departed the club for a second time in May 2011.
Whitby Town
Williams joined Whitby Town in August 2011. He made his first appearance for the club on 13 August which the club drew 1–1 with Chasetown F.C.. On 26 October 2011 he succeeded Tommy Cassidy and became player manager of Whitby Town. Williams secured a creditable 12th spot for Whitby in 2013, followed by 9th a year later- Town's best finish for eight seasons. The Blues ended 2014–15 in 13th, but after a poor record of 3 wins in 21 league games, Williams was sacked on Monday 23 November 2015. In 2019 he was interviewed for the Thornaby FC job, but missed out to former Bolton youth team legend Craig Haley.
International career
Williams represented England at under-21 and B level.
Style of play
He is a utility defender who can also play defensive midfield.