Born in Pontypool, Garner started his career at Cwmbran Town before moving to Llanelli. In 2000, he joined Bury for £5000, where he played over 140 games over five seasons. He turned down a new contract with Bury and joined east London side Leyton Orient in May 2005 on a two-year contract. Manager Martin Ling described him as "a big, commanding goalkeeper who is widely rated as one of the best in the lower divisions." He went on to make nearly 100 appearances for Orient. A particular highlight came when Orient knocked Premier League club Fulham out of the 2005-06 FA Cup, a game in which Garner saved a penalty from Collins John to help his side progress. In May 2007, Garner turned down an extended contract at Leyton Orient to join League Two side Shrewsbury Town as their first choice goalkeeper. However, injuries led to Garner falling down the pecking order and having not played for the first team since November 2008, he left the club in January 2010 after reaching a financial agreement over the rest of his contract. He joined Grays Athletic in February 2010 on a free transfer. Garner was released at the end of the 2009–10 season, and subsequently joined Newport County on 15 July 2010. In May 2011 he signed for Bath City. After making a total of 57 league appearances Garner left Bath in January 2013. He then signed for Southern League South & West Division side Cirencester Town. He made his debut for the club on 12 January 2013 in a 2–2 draw against Cinderford Town. After ending the 2012–13 season with Cirencester he agreed to remain at the club for the 2013–14 campaign. He left Cirencester Town in January 2016 after 151 appearances citing the travel involved as his reason. His final game was a 3 nil victory against Stratford Town. He helped the club to promotion as Southern League South & West Division champions and in May 2014 was named Supporters Player of the Year at the Gloucestershire club. In January 2016, Garner left Cirencester to sign for Merthyr Town. He returned to Cirencester in 2017 on loan, before departing Merthyr at the end of the 2016-17 season. In August 2017, Garner joined Goytre. He then played for Croesyceiliog. Garner played for Taff's Well for the 2018-19 season.
Garner holds a BA Honours in Sports and Leisure Management, having graduated from Swansea Metropolitan Universityin 1999. He was brought up in Pontypool's neighbouring town of Cwmbran. Garner's idol is Neville Southall and he supports Everton because of this. His move to Newport County in 2010 was also a personal one for Garner, having attended County matches as a supporter at Somerton Park in his early years.