Substitute Lee Chung-yong earned Bolton their first FA Cup semi-final spot for 11 years with a late winner to settle an enthralling tie against Birmingham 3-2 at St Andrew's.
Johan Elmander and Kevin Davies twice put Bolton in front only for Cameron Jerome and Kevin Phillips to reply for the Carling Cup holders.
But Lee made no mistake with his close-range header a minute from time to end Birmingham's hopes of a cup double.
Birmingham were lacking seven regular first teamers through injury and also lost Barry Ferguson and Martin Jiranek during the first half.
But the never-say-die spirit which has been their trademark under Alex McLeish surfaced again - only for Lee to break their resistance.
Former Birmingham midfielder Fabrice Muamba had the first attempt on goal but his low drive did not trouble Ben Foster.
Blues started to get a foothold in the game and Jussi Jaaskelainen had to grab hold of a Davies header from Larsson's inswinging free-kick.
Martin Petrov found himself in yards of space on the left of the Birmingham box but his shot was blocked by Stuart Parnaby.
Jerome's pace took him behind the Bolton defence when running onto Larsson's pass but his first touch was woeful.
Gretar Steinsson became the first player to be booked after 20 minutes for bringing down Phillips.
A minute later Elmander put Bolton in front.
Muamba won the ball in the air and Klasnic's flick-on let in Elmander who was unchallenged by Davies and Jiranek before he drilled a low left-footed shot past Foster.
It was his 11th goal of the campaign.
Birmingham suffered a double setback with Ferguson and Jiranek both limping out of the action to be replaced by Liam Ridgewell and Nathan Redmond.
Jean Beausejour, on target in the last two games, had a shot deflected for a corner after good play by David Murphy.
Jaaskelainen came racing out of his area to clear from Jerome. But after 38 minutes the striker brought Birmingham back on level terms.
The former Cardiff player won the ball in the air and David Wheater's clearance dropped back into his path.
Jerome needed no second invitation to hammer a low shot past Jaaskelainen and into the corner of the net.
Birmingham started the second period in confident mood and appealed in vain for a penalty when Jaaskelainen came to the edge of his box and challenged Jerome after a fine pass from Redmond.
But referee Phil Dowd, who was up with play, opted to award a corner much to the anger of the home fans.
Bolton substitute Lee came to Bolton's rescue when he cleared off the line from Murphy following a corner by Larsson.
Kevin Davies had the ball in the net after 64 minutes but was clearly offside.
A minute later, the Bolton striker restored his side's lead.
He was brought down in the box by Curtis Davies and got up to send Foster the wrong way from the spot.
Phillips came close to equalising when his shot from a narrow angle crashed against the post with Jaaskelainen beaten.
The game was now wide open and Foster produced a fine save to deny Elmander after he broke clear of the home defence.
Then with 10 minutes left a superb strike by Phillips brought Birmingham level.
Redmond won the ball in the air and Phillips turned on the edge of the box and volleyed over Jaaskelainen.
Davies was yellow carded for a challenge on Ridgewell.
With a minute left Lee sent the 4,300 Bolton fans wild with delight as his header beat Foster to settle the tie.