A Curtis Davies brace helped Blues seal the perfect gift of three points in an absorbing Boxing Day encounter in South Yorkshire.
Davies’ 35th minute header was quickly cancelled out by Jonathan Greening, then Barnsley’s Craig Davies missed from the penalty spot in the 73rd minute.
His namesake Curtis made the Reds pay four minutes later, with a second header of the afternoon from Rob Hall’s free-kick.
During the opening stages the wet playing surface allowed sliding challenges aplenty to fly in, although this prevented both teams from grabbing a real foothold on possession.
Blues did manage to apply some pressure around the ten minute mark, though, as three consecutive Hall corners caused discomfort in Barnsley’s box.
But the early chances came the way of the home side.
Butland did well to keep hold of Stephen Dawson’s 20-yard volley, then five minutes later the England international spectacularly tipped away Marcus Tudgay’s powerful header, after Dawson whipped in a dangerous cross from the right.
There was little action to speak of for the next 20 minutes – that was until Davies and Greening found the net within 60 seconds of each other.
Blues initially edged ahead thanks to an unmarked Davies nodding home Hall’s corner from a couple of yards out.
However, Lee Clark’s men were soon pegged back after failing to clear their lines, which eventually led to Greening guiding the ball past Butland into the bottom corner.
Moments into the second-half and the Reds appeared set to score a second, with Tudgay finding Chris Dagnall in the area. The ex-Rochdale striker couldn’t quite get enough purchase to direct the ball on target, however.
Birmingham responded on 56 minutes via Wade Elliott’s free-kick, but the 34-year-old drifted his effort a couple of feet wide of Luke Steele’s left post.
Then just after the hour mark down the opposite end of the pitch, Davies prevented a certain goal by blocking John Stones’ shot.
Barnsley wasted an even better opportunity from the spot, after Caldwell was adjudged to have handled Davies’ header. Fortunately, the Barnsley forward blasted the penalty over Butland’s crossbar.
And shortly afterwards Butland did brilliantly to stop Hayden Mullins scoring an own goal with a diving header.
A dramatic ending was topped off by Davies winning all three points for Blues thirteen minutes from time.
Hall’s free-kick sliced the Reds’ defence open and this allowed an unopposed Davies to head past Steele, which sent the travelling Blues fans into rapture.
Birmingham suffered the odd scare as Barnsley piled forward to snatch a draw, but Blues also went close to scoring a third when Mullins’ lofted effort was tipped over the bar.
That proved of little significance, however, as Blues moved to within eight points of the play-off places.
Barnsley (in numerical order): Luke Steele (C), Bobby Hassell, Scott Golbourne, Stephen Dawson, Jim O’Brien, David Perkins (Matt Done 68), Chris Dagnall (Craig Davies 68), Jimmy McNulty, Jonathan Greening, Marcus Tudgay, John Stones.
Subs not used (in numerical order): Ben Alnwick, Scott Wiseman, Marlon Harewood, Tomasz Cywka, Emile Sinclair.
Goals: Greening (36)
Bookings: Tudgay (40)
Blues: Jack Butland, Paul Robinson, Curtis Davies, Steven Caldwell (C), Mitch Hancox, Rob Hall (Morgaro Gomis 86), Callum Reilly, Hayden Mullins, Wade Elliott, Nathan Redmond (Chris Burke 53), Nikola Zigic.
Subs not used: Colin Doyle, Pablo Ibanez, Emmitt Delfouneso, Ravel Morrison, Jake Jervis.
Goals: Davies (35, 77)
Bookings: Elliott (75)
Referee: C. Boyeson
Attendance: 9, 191 (826 Blues fans)