On the eve of the 1997–98 season, Williams left Caernarfon for Barry Town, then the only professional side in the League of Wales, breaking their transfer fee in the process at a cost of £25,000.
On 25 March 1999, after over 200 League of Wales goals in four seasons, Torquay United paid £70,000 (breaking their transfer record) to sign Williams, beating off competition from a number of clubs, possibly helped by his Barry teammates Lee Barrow and Paul Mitchell, both former Torquay players, passing on happy memories of Plainmoor.
He was placed on the transfer list on 2 November 2001 by mutual consent after finding himself playing mainly as a substitute in Roy McFarland's side and left to join Hartlepool United on 5 March 2002 for a fee of £30,000.
However it was not long before Williams made his Hartlepool debut against Bristol Rovers after coming on as a substitute, replacing Gordon Watson.
[4] However the season would end bitterly for Williams as he picked up an injury during Hartlepool's play-off defeat to Bristol City and missed out on the opportunity to play for his country.
Williams' spent the majority of the 2004–05 season on the right wing with manager Neale Cooper preferring the partnership of Adam Boyd and Joel Porter up front.
The 2005–06 season saw Williams once again playing up front due to the injuries of Adam Boyd, Joel Porter and James Brown.
[11] Whilst playing part-time for Northern League side Jarrow Roofing, Williams began working for Hartlepool Youth Offending Service.