Nikola Zigic rescued a late point for Birmingham with an injury-time equaliser to deny Charlton a dream return to England's second tier.
Leon Cort's 82nd-minute header amid a goalmouth scramble looked to have earned the Addicks victory.
But last season's play-off semi-finalists rescued a point with almost the last kick of the game when substitute Zigic scored from 12 yards.
Cort's goal aside, City's debutant keeper Jack Butland was rarely tested.
The 19-year-old was part of England's Euro 2012 squad, selected as number one for Team GB at the Olympics and then made his senior international bow against Italy in midweek.
But this was his first appearance above the fourth tier as he made his long-awaited Birmingham bow.
Charlton's Yann Kermorgant could not test Butland early on as he somehow headed over Johnnie Jackson's cross from just a couple of yards out.
And it set the tone for the match with both sides having several chances to open the scoring.
Substitute Nathan Redmond blazed wide from six yards late on as the game looked to be heading for a goalless draw, but Cort finally found the net five minutes later when the hosts failed to clear Bradley Pritchard's cross.
The goal looked to have won it for Charlton in their first game back in the Championship after a three-year hiatus, until Zigic had the final say.
Birmingham manager Lee Clark:
"It was not our most fluent performance. Some of our players were not exploding. These things happen in the early part of the season.
"It is credit to them that they showed great character to come back to snatch a point.
"It is sign of a good side to come back as they did when our general performance has not been great."
Charlton manager Chris Powell:
"We took the game to Birmingham and should have come away with a win.
"Another day we might not play so well and win. But it is a real confidence boost for the players.
"It gives them a belief in themselves that they can perform in the Championship."
Catch up with all the latest highlights from the Championship on the Football League Show