Born in Blackburn, Barnes joined the Blackburn Rovers youth academy as at the age of 11, and went on to captain their U18s.[2] He joined Marine A.F.C. in the Northern Premier League on loan in January 2019.[3] In February 2019 while on loan, he signed his first professional contract with Blackburn Rovers until 2021.[4][5] In total, he made 13 appearances with Marine scoring 1 goal.[6]
On 30 June 2021, Barnes extended his contract with Blackburn Rovers until 2023.[7] He was part of the preseason side for the senior team in the summer of 2022, but suffered an ACL injury that had him sidelined for the rest season. On 27 September 2022, he again extended his contract with Blackburn Rovers for 2+1 seasons despite his injury.[8] He made his senior and professional debut with Blackburn Rovers as a starter in a 4–3 EFL Cup win over Walsall on 8 August 2023, but shortly after suffered a setback on his injury.[9]
On 18 May 2024, it was confirmed Barnes will be leaving the club at the end of his contract.[10]
Barrow
On 18 June 2024, it was confirmed Barnes will join Barrow on the 1 July when his contract at Blackburn Rovers expires.[11]