Kristian Pedersen's equalising header against QPR was followed just three minutes later by the Birmingham City winner
Birmingham City scored twice in the last 10 minutes to earn their first home win in 13 games and stun Queens Park Rangers.
Charlie Austin looked to have set QPR on their way with his close-range volley a minute before the break.
But Blues, who had not won at home since 28 October, levelled on 82 minutes when Marc Roberts crossed for Kristian Pedersen to flick home a header from eight yards,
Just three minutes later, Croatian midfielder Alen Halilovic then won it for Blues with a superb left-footed curler from 20 yards - his first goal for the club.
- Relive Saturday's EFL action
QPR were unbeaten in their previous seven away league matches, their best run on the road in over 10 years - and they looked to add to that when they took the lead on the stroke of half-time.
Austin, who came off the bench to score twice and win the game for West Brom against Blues last season again showed his liking for this corner of Birmingham.
The 31-year-old striker began the move with a first-time ball out to the wing where Todd Kane floated a neat right-foot cross back in for Austin to volley in at the far post for his fourth goal in nine games since returning on loan to QPR in January.
QPR should immediately have made it 2-0 when another former Baggies man Chris Willock squared for Stefan Johansen, but he somehow ballooned over from six yards out.
QPR striker Charlie Austin has now scored three goals on his last two visits to St Andrew's, having scored twice here for West Brom last season
And they had the better chances after the break too, but a three-man substitution from Blues boss Aitor Karanka sparked a turnaround, following the introduction of Halilovic and Jonathan Leko, followed by targetman Lukas Jutkiewicz.
Full-back Pedersen's well-taken header gave Blues hope, then Halilovic, dubbed The Croatian Messi in his youth, sank the Hoops with a stylish finish.
And that gave Blues a second goal in a home game for the first time since their last home win, beating Huddersfield Town 2-1 in October - and for only the second time since the 3-3 draw with Hull City last June.
- Line-upsMatch StatsLive Text
Line-upsBirmingham
Formation 4-1-4-1
30Etheridge2Colin12Dean15Clarke-Salter3Pedersen34Sunjic17Sánchez24Harper20Gardner11Bela9Hogan
- 30Etheridge2Colin12Dean15Clarke-SalterSubstituted forRobertsat 63'minutesBooked at 90mins3PedersenBooked at 52mins34Sunjic17SánchezSubstituted forValeryat 90+1'minutes24Harper20GardnerSubstituted forHalilovicat 63'minutesBooked at 86mins11BelaSubstituted forLekoat 63'minutes9HoganSubstituted forJutkiewiczat 71'minutes
Substitutes
- 1Prieto4Roberts5Friend6Valery8Clayton10Jutkiewicz14Leko18McGree35Halilovic
QPR
Formation 3-4-1-2
13Dieng4Dickie20Cameron6Barbet2Kane12Ball14Johansen25Hämäläinen21Willock7Bonne45Austin
- 13Dieng4Dickie20Cameron6Barbet2Kane12Ball14JohansenSubstituted forAdomahat 87'minutes25Hämäläinen21WillockBooked at 13minsSubstituted forFieldat 56'minutes7BonneBooked at 73minsSubstituted forKelmanat 87'minutes45AustinSubstituted forDykesat 55'minutes
Substitutes
- 1Lumley9Dykes10Chair15Field19Thomas24Kakay26Bettache29Kelman37Adomah
Referee:David WebbMatch StatsHome TeamBirminghamAway TeamQPRPossessionHome56%Away44%ShotsHome13Away10Shots on TargetHome6Away2CornersHome7Away3FoulsHome12Away12Live TextPost update
Match ends, Birmingham City 2, Queens Park Rangers 1.
90'+7'Full Time
Second Half ends, Birmingham City 2, Queens Park Rangers 1.
90'+6'Booking
Marc Roberts (Birmingham City) is shown the yellow card.
90'+5'Post update
Hand ball by Albert Adomah (Queens Park Rangers).
90'+2'Post update
Attempt missed. Geoff Cameron (Queens Park Rangers) header from the centre of the box is close, but misses to the right. Assisted by Albert Adomah following a set piece situation.
90'+1'Post update
Foul by Jonathan Leko (Birmingham City).
90'+1'Post update
Robert Dickie (Queens Park Rangers) wins a free kick in the attacking half.
90'+1'Substitution
Substitution, Birmingham City. Yan Valery replaces Iván Sánchez.
89'Post update
Foul by Alen Halilovic (Birmingham City).
89'Post update
Sam Field (Queens Park Rangers) wins a free kick in the defensive half.
87'Substitution
Substitution, Queens Park Rangers. Albert Adomah replaces Stefan Johansen.
87'Substitution
Substitution, Queens Park Rangers. Charlie Kelman replaces Macauley Bonne.
86'Booking
Alen Halilovic (Birmingham City) is shown the yellow card for excessive celebration.
85'goalGoal!
Goal! Birmingham City 2, Queens Park Rangers 1. Alen Halilovic (Birmingham City) left footed shot from outside the box to the bottom left corner. Assisted by Iván Sánchez.
84'Post update
Attempt missed. Harlee Dean (Birmingham City) header from the centre of the box misses to the right. Assisted by Marc Roberts.
82'goalGoal!
Goal! Birmingham City 1, Queens Park Rangers 1. Kristian Pedersen (Birmingham City) header from the centre of the box to the bottom right corner. Assisted by Marc Roberts with a cross.
81'Post update
Rekeem Harper (Birmingham City) wins a free kick in the defensive half.
81'Post update
Foul by Macauley Bonne (Queens Park Rangers).
80'Post update
Corner, Queens Park Rangers. Conceded by Kristian Pedersen.
79'Post update
Corner, Queens Park Rangers. Conceded by Harlee Dean.
Page 1 of 6rewindpreviousNavigate to the next pagenextNavigate to the last pageforward
Source: bbc.com