Bayern Munich set up a mouth-watering German Cup final with Bundesliga champions Borussia Dortmund after beating Borussia Moenchengladbach on penalties on Wednesday to keep their treble chances on track.
Following a goalless 120 minutes, Bayern keeper Manuel Neuer, who was in fine form throughout the game, saved a penalty by Havard Nordtveit after Gladbach's Dante had fired his spot kick over the bar to clinch a 4-2 win on penalties.
Bayern are also still in the running for the Bundesliga and Champions League titles.
Dortmund, top of the league with a five-point lead ahead of second-placed Bayern, had booked their spot on Tuesday with a last-gasp goal in extra time for a nervous 1-0 win over second division leaders Greuther Fuerth.
"Both teams played an outstanding game," Bayern coach Jupp Heynckes told reporters. "We had more chances but it was an open game until the end. "(Keeper) Manuel Neuer has to be singled out for a superb performance."
Hosts Gladbach, unbeaten at home for the previous 18 consecutive games having won 13 and drawn five, had twice defeated the Bavarians in the league this season.
They were lucky, however, not to concede a goal after six minutes with Toni Kroos' low drive hitting the post.
Bundesliga top scorer Mario Gomez was then denied by Gladbach keeper Marc Andre ter Stegen, who parried the forward's powerful header.
In an entertaining encounter, Bayern, who had scored 20 goals in their last three games, had the better chances with Arjen Robben twice coming close while Gladbach's Marco Reus was also twice denied by keeper Manuel Neuer, including six minutes from time in a one-on-one situation.
Dutchman Robben tried his luck from a distance in extra time but his thundering drive was spectacularly palmed away by ter Stegen.
In the penalty shootout that saw Bayern reach their 18th cup final and their third in the last five editions, it was Gladbach defender Dante, reportedly close to joining Bayern for next season, who sent his spot kick over the bar.
Neuer then saved a weak penalty from Norwegian Nordveit to seal their spot in the final.
"It is tough being eliminated on penalties," said Gladbach coach Lucien Favre, whose team are third in the Bundesliga. "But we have to look forward. We have to get up and because Saturday is again an important game for us. We can't change what has happened."
Photograph: REUTERS / Ina Fassbender