RB Leipzig reached the German Cup final as substitute Emil Forsberg netted a last-gasp goal to give them a 2-1 win at Werder Bremen after extra time in a pulsating clash on Friday.
With a penalty shootout looming, Forsberg popped up to volley home superbly with almost the last kick of the game after Hee-Chan Hwang headed a Kevin Kampl cross from the right into the Swedish forward's path.
Leipzig dominated throughout and twice hit the woodwork but were let off the hook late in the first half when Bremen were awarded a penalty only for the decision to be rescinded by referee Manuel Grafe after a VAR check.
Guardiola backs De Bruyne to 'show himself he's back' ahead of Leipzig clash
The home side's keeper Jiri Pavlenka pulled off several fine saves to keep a clean sheet in regular time but was powerless when Hwang fired Leipzig ahead in the 93rd minute with a clinical finish from eight yards.
Bremen levelled in the 105th minute out of the blue as Leonardo Bittencourt took advantage of Dayot Upamecano's error and steered the ball home from inside the penalty area after rounding visiting keeper Peter Gulacsi.
But Leipzig had the last laugh when Forsberg, who came on for Christopher Nkunku in the 114th minute, twisted in mid-air to plant an unstoppable shot past Pavlenka as the visitors launched their final raid into Bremen's area.
Leipzig will bid to win their first major trophy in the May 13 final in Berlin, having lost the 2019 final 3-0 to Bayern Munich.
German champions Bayern top the Bundesliga with 71 points, seven ahead of second-placed Leipzig in their two-team title race. Leipzig coach Julian Nagelsmann is set to take over at Bayern following the conclusion of the season.
Borussia Dortmund are at home to second-tier side Holstein Kiel in the other semi-final on Saturday.
Marsch sacked by RB Leipzig after five months in charge
United want Leipzig pair Nkunku and Haidara - Paper Round