Gardner debuterade i moderklubben Aston Villa 2005. Säsongen 2007/2008 gjorde han tre ligamål för Aston Villa, varav två på frispark. I januari 2011 skrev Gardner på för Sunderland, där han spelade tillsammans med svenske Sebastian Larsson. 2014 gick flytten tillbaka till Birmingham efter att han skrivit på ett tre års kontrakt för West Bromwich Albion.
Craig Gardner är smått ökänd i Birmingham-området då han spelat för områdets tre största klubbar (Aston Villa, Birmingham City & West Bromwich). Under sin tid i Villa påstod han sig länge ha varit en supporter laget men intygade att han alltid hållit på den bittra rivalen Birmingham City, när han flyttade dit 2010. 2014 fulländade han det hela genom att flytta till West Bromwich och gång på gång slänga ut sig hatkommentarer om sina gamla klubbar.