Premier League - Villa hold Blues to derby draw
Roger Johnson opened the scoring for Birmingham early in the second half, but the lead was cancelled out by another centre-back, James Collins, with a volley 17 minutes from time.
A draw suits neither side in their battle against relegation, but both managers have reason for optimism after an encounter full of passion and endeavour.
David Bentley made his Birmingham debut following a loan move from Tottenham Hotspur and immediately made a positive impact, seeing plenty of the ball on the right flank and delivering set pieces with typical precision.
The deal looks like a masterstroke by manager Alex McLeish, and one that could keep the Blues in the top flight.
Certainly, they did not miss wantaway Sebastian Larsson who was left out of the matchday squad altogether.
This fixture has a history of goalkeeping errors, most notably a legendary howler by Villa's Peter Enckelman in 2002, and Ben Foster nearly produced a clanger of equal calamity after 30 seconds.
The Birmingham keeper dallied over a backpass, nearly got closed down by Stewart Downing and played a poor clearance straight to Gabriel Agbonlahor who raced in on goal but shot over.
It was a frenetic start as Downing dragged a shot just wide from the edge of the box, while at the other end Craig Gardner volleyed a yard or so over.
Richard Dunne set the tone for a typically feisty encounter with a late, heavy challenge on Bentley for which he was booked by Mark Clattenburg.
The chances continued to come at both ends, as Johnson headed wide for Birmingham before John Carew hit the bar with a looping header - all before seven minutes had been played.
Matt Derbyshire - in for the injured Cameron Jerome - missed a golden opportunity to open the scoring on 21 minutes, as Gardner robbed Kyle Walker and crossed low from the left, but the striker failed to make contact with what looked like an easy chance.
Then Villa hit the woodwork for a second time, as Ciaran Clark's overhit cross looped over Foster and bounced out off the top of the bar.
Birmingham dominated the latter stages of the first half, and might have had a penalty when David Murphy went down following a tangle of legs with Marc Albrighton, but referee Clattenburg showed leniency.
Four minutes after the break, the home team broke through, but needed a large slice of luck. Gardner hit a poor free-kick that took two deflections into the path of Johnson who volleyed low into the left corner for his first goal at St Andrew's.
Back came Villa, and Johnson produced a superb piece of defending to divert a cross with his chest beyond the visiting strikers but wide of the far post.
Birmingham appeared to be weathering the storm, and had chances of their own to double their lead.
Brad Friedel produced a magnificent save to deny a low Derbyshire cross, before Gardner dragged a volley well wide from the edge of the box.
The home side paid for their profligacy on 73 minutes, when they failed to deal with an Albrighton cross from the right.
The ball dropped to Collins, whose volley took a deflection off Liam Ridgewell on its way past Foster.
Both sides had chances to claim all three points. Downing forced Foster into a good save following slick build-up play by Agbonlahor and Nathan Delfouneso, while Richard Dunne had a header cleared off the line, and Delfouneso had a stinging shot tipped onto the bar by Foster.
Birmingham, meanwhile, had their best efforts blocked by the excellent Collins and Dunne, while a Nikola Zigic header dropped agonisingly wide in stoppage time.