Born in Sutton, London, Gambin began his career in the youth system at AFC Wimbledon before moving to Barnet as an apprentice in 2009. He made his first-team debut in a 4–0 win at home to former club AFC Wimbledon on 28 April 2012, coming on as a late substitute for Scott McGleish, before signing his first professional contract in the summer of 2012. Gambin made his first appearance of 2012–13 after being introduced as a 66th-minute substitute in a 3–0 defeat away to Bradford City on 15 September 2012. He found first-team opportunities limited, joining Isthmian League Premier Division club Hendonon loan in November 2012 and debuted as a substitute in a 2–1 defeat away to Aldershot Town in the FA Cup first round. He completed the loan spell with three appearances. Gambin broke into the Barnet first-team towards the end of the season and scored his first goal for the club in a 4–1 win at home to Morecambe on 9 March 2013. He finished the season with two goals from 10 appearances, but was unable to help Barnet prevent relegation to the Conference Premier. Gambin signed a new long-term contract with Barnet a little more than a week before the start of 2013–14. He scored Barnet's first goal in a 3–0 win at home to Chester on the opening day of the season and finished 2013–14 with one goal from 25 appearances. Gambin scored four goals in 26 league appearances for Barnet in 2014–15 as the club won the Conference Premier title and therefore promotion to League Two. After the end of the season, Barnet took up the option to extend Gambin's contract. In Barnet's first season back in the Football League, Gambin scored four goals in 49 appearances, as they finished 15th in League Two. He made his first appearance of 2016–17 in the starting lineup away to Cambridge United on the opening day of the season, which finished as a 1–1 draw. Barnet accepted a bid in excess of £100,000 from Leyton Orient for Gambin in August 2016, but he rejected the opportunity and instead stayed with the club. His first goal of the season came on 8 October 2016 against Doncaster Rovers, when he scored a late equaliser in the 86th minute to make the score 2–2, although Barnet went on to lose 3–2. After four goals from 21 appearances, Gambin was transfer listed after he rejected an offer of a new contract for the fourth time.
Gambin signed for League Two club Luton Town on 16 January 2017 on a two-and-a-half-year contract for an undisclosed fee, with the option of a further year. He made his debut five days later, starting in Luton's 1–1 draw away to Wycombe Wanderers. Gambin scored his first goal for Luton with the second goal in a 3–0 victory at home to Hartlepool United on 14 February. He was an unused substitute in both legs of their 6–5 aggregate play-off semi-final defeat to Blackpool, and finished 2016–17 with 17 appearances and one goal. He joined League Two club Crawley Town on 31 August 2018 on loan until the end of 2018–19. Gambin was released by Luton when his contract expired at the end of the 2018–19 season.
Colchester United
Gambin signed for League Two club Colchester United on 26 June 2019 on a two-year contract, effective from 1 July. He made his club debut as a substitute for Jevani Brown in Colchester's 1–1 home draw with Port Vale on 3 August. He scored his first goal for the club on 29 October 2019 in Colchester's 3–1 EFL Cup victory against his former club Crawley Town.
International career
Gambin is of Maltese descent and joined the Malta squad for training in June 2015. His application for Maltese citizenship was successful and he was called up to the national team in May 2016. He debuted later that week, starting in a 6–0 friendly defeat to the Czech Republic.