Gardner previously spent 18 months at St Andrew's after leaving fierce city rivals Aston Villa and was part of the team that famously stunned Arsenal with a late goal to win the 2011 League Cup final at Wembley.
He moved to Sunderland at the end of that season but complained of homesickness in the north east and was soon back near his roots when he made the move to West Brom.
The former England Under-21 international played 69 Premier League games during his first two seasons at the Hawthorns but has fallen down the pecking order tin 2016/17, making seven of his only nine league appearances from the bench.
He now joins a Birmingham team that was, until recently, firmly in playoff contention. Manager Gary Rowett was sacked with the side 7th in the table, but new boss Gianfranco Zola has lost three of his first four games in charge and is yet to oversee his first win.