Early career Born in
Belfast, Watson made his senior-club debut for
Ballymena United on 4 December 2001 in a 1–1 draw against
Institute, at 16 years of age. He attracted interest from
Linfield in February 2008, although any interest concluded when Watson signed a new contract with Ballymena a few days later. In January 2011, Watson made his 300th appearance for the club. In April 2011 he joined
Linfield on a two-year contract, during which the team would capture two consecutive Premiership and Irish Cup doubles.
FC Edmonton On 18 January 2013, it was announced that Watson, along with teammate
Daryl Fordyce would not return to Linfield the following season, instead seeking new playing opportunities in Canada. On 25 February 2013, it was reported that both Watson and Fordyce would join FC Edmonton. Watson was named FC Edmonton captain prior to the
2013 NASL season, and after missing the first few months due to a torn MCL, went on to be named in the NASL Best XI for the season. After the
2015 NASL season, Watson signed with the club for a fourth season. In August 2016, would go on to become the first player to make 100 appearances for the club. After FC Edmonton surrendered a league low 21 goals in 32 games during the
2016 NASL season, Watson was named to the NASL Best 11 for the second time in the 2016 season.
Knattspyrnufélag Reykjavíkur On 13 March 2018, he joined Icelandic team
KR.
Return to Ballymena United In January 2019 he returned to
Ballymena United.
Larne On 3 June 2019, it was announced that Watson had signed on a full-time deal for
Larne.
Carrick Rangers In June 2023 he signed for
Carrick Rangers.
Armagh City In July 2025 he signed for
Armagh City, combining his playing career with a coaching role at Larne.
Newry City In January 2026 he signed for
Newry City. ==International career==