From Medway, Kent, Walsh joined local club Gillingham aged 11, signing a scholarship with the club in late 2017.[2] In May 2019, Walsh signed a professional contract with Gillingham.[3] On 3 September 2019, Walsh made his debut for Gillingham in a 3–2 EFL Trophy defeat against Colchester United.[4] He made his English Football League debut on 27 October 2020 when he came on as a substitute for the injured Jack Bonham against Ipswich Town.[5]
Queens Park Rangers
On 28 January 2021, Walsh joined Queens Park Rangers for an undisclosed fee, signing a three-and-a-half-year contract that would initially see him join up with the club's under-23s team.[6]
Walsh made his first team debut for QPR coming on as a half time substitute for injured keeper Jordan Archer in an EFL Cup game against Norwich City on 16 August 2023.[10]
On 7 December 2023, Walsh joined League Two side Accrington Stanley on an emergency seven-day loan.[11] Two days later, he made his debut, keeping a clean sheet in a 0–0 draw with Doncaster Rovers.[12] The loan was then extended by a further seven days.[13] On 22 December, it was extended by another seven days.[14] The following week, it was extended once more.[15] On 9 January 2024, the loan move was extended for another seven days.[16] On 18 January 2024, Walsh returned to Queens Park Rangers after making a total of nine appearances.[17]
On 4 May 2024, Walsh made his first league appearance for QPR, starting in a 2-1 win away at Coventry City.
On 6 June 2024, QPR announced the player had signed a new contract.[18]