Match ends, Birmingham City 0, Charlton Athletic 1.
Dale Stephens scored the only goal as Charlton extended their unbeaten run in the Championship to five games.
Charlton keeper Ben Hamer denied Birmingham striker Lee Novak in the only real action of the first half with his low save from a powerful effort.
Stephens scored the winner after the break when he fired into an open goal at close range after Bradley Pritchard nudged the ball his way.
Lee Clark's Birmingham have now gone four games without a league win.
Their dismal run leaves them in the Championship relegation zone while the win for Charlton, who scored just their 10th league goal of the season, lifts them clear of the bottom three.
Birmingham struggled to break down Charlton's resolute defence in the early stages before Hamer's save from Novak.
Stephens squandered a chance before the break when his tame effort was easily saved by Birmingham goalkeeper Darren Randolph.
But he made no mistake after the break when Randolph parried a Cameron Stewart effort before Pritchard set up the match-winner in the 57th minute.
Birmingham City assistant manager Terry McDermott:
"No-one is happy with the position we are in at the moment in the bottom three. I would like to think that it will not last long because we have too many good players in the side.
"We are all devastated with the result especially after some good performances in our recent games. We thought we had turned the corner but we simply didn't perform on the day against Charlton. Our decision making was very poor."
Charlton Athletic manager Chris Powell:
"I'm really pleased with the performance of the players. It was a crucial game but we warranted the three points. If you keep out the opposition you will get your chances. My only gripe was that it was only 1-0 and I felt 2-0 or 3-0 would have been right. All the players are doing their job and they fully deserved their win.
"I've given the players confidence to go out and play. They have given each other confidence and a platform and some are playing really well."
- 33GraySubstituted forFergusonat 62'minutes
- 12NovakSubstituted forLøvenkrandsat 62'minutes
- 4JacksonSubstituted forCookat 90+1'minutes
- Scott Mathieson
- Shots on Target
Second Half ends, Birmingham City 0, Charlton Athletic 1.
Foul by Jordan Cook (Charlton Athletic).
Paul Caddis (Birmingham City) wins a free kick in the defensive half.
Substitution, Charlton Athletic. Jordan Cook replaces Johnnie Jackson.
Attempt missed. Peter Løvenkrands (Birmingham City) right footed shot from the centre of the box is too high. Assisted by Kyle Bartley.
Hand ball by Shane Ferguson (Birmingham City).
Corner, Charlton Athletic. Conceded by Paul Caddis.
Delay over. They are ready to continue.
Delay in match Paul Robinson (Birmingham City) because of an injury.
Attempt saved. Simon Church (Charlton Athletic) left footed shot from the centre of the box is saved in the bottom left corner. Assisted by Cameron Stewart.
Rhoys Wiggins (Charlton Athletic) wins a free kick in the defensive half.
Foul by Nikola Zigic (Birmingham City).
Attempt missed. Dale Stephens (Charlton Athletic) right footed shot from outside the box is high and wide to the right.
Attempt blocked. Cameron Stewart (Charlton Athletic) right footed shot from the left side of the box is blocked. Assisted by Johnnie Jackson.
Substitution, Birmingham City. Peter Løvenkrands replaces Lee Novak.
Substitution, Birmingham City. Shane Ferguson replaces Demarai Gray.
Attempt blocked. Tom Adeyemi (Birmingham City) left footed shot from the left side of the box is blocked. Assisted by Nikola Zigic with a headed pass.
Foul by Johnnie Jackson (Charlton Athletic).
Tom Adeyemi (Birmingham City) wins a free kick in the defensive half.