Barnes was born and initially raised in Jamaica as the son of a military officer from Trinidad and Tobago and a Jamaican mother. He moved to London, England with his family when he was 12 years old. Barnes joined Watford aged 17 in 1981 before playing 296 competitive games for them scoring 85 goals. He was a Watford 1984 FA Cup Final runner-up. He debuted for England in 1983 and in 1987 joined Liverpool for £900,000. In his 10 seasons there Liverpool won the then top-flight First Division twice and the FA Cup twice. He scored 106 goals in 403 matches. By the time of his last cap in 1995, he had more caps than any other black England player. After two years at Newcastle United, he ended his playing career at Charlton Athletic in 1999.