Birmingham striker Nikola Zigic scored an injury-time winner against Stoke at St. Andrew's.
The Serbian international headed home a cross from substitute Cameron Jerome as Birmingham achieved back-to-back league wins for the first time in 14 months.
Stoke keeper Asmir Begovic was called into action for the first time in blocking a header from Liam Ridgewell after Barry Ferguson had headed a cleared free-kick from Larsson back into the box.
Stoke enjoyed a spell of possession and John Carew had a shot blocked by Ridgewell inside the box.
Birmingham started the second half on the offensive and a 50-yard crossfield ball from Gardner was controlled by Larsson who cut inside before sending a dipping drive wide.
Blues had a strong appeal for a penalty rejected when Robert Huth appeared to block a fierce drive from Bentley with his hand and Jerome teed up Roger Johnson, but he dragged his shot wide before Zigic headed the winner from close range from a Jerome centre after Begovic had parried Bentley's drive.