Bayern squeezed through to the final with a shootout win over Monchengladbach and Dortmund scored late in extra time to defeat second-division side Greuther Fuerth.
In league play, Dortmund has quietly gone undefeated in 20 straight matches to open a five-point lead over Bayern with just eight games left in the season.
Although Bayern was held scoreless on the road against Gladbach, which had won both league meetings this season, a 4-2 win in penalties put the side into the May 12 final in Berlin.
"It wasn't easy," said Bayern's Franck Ribery. "Naturally, our aim was to win it in the 90 minutes, but Gladbach are a good team."
"They were much better than in January and in August," Gladbach coach Lucien Favre said, referring to the two previous meetings.
Bayern had scored 20 goals over its previous three games, including a 7-0 win against Basel in the Champions League, and will look to resume its outburst when Hannover visits the Allianz Arena on Saturday.
In addition to trying to catch defending champion Dortmund, Bayern also has to keep an eye on third-place Gladbach and fourth-place Schalke. The top four are well ahead of the rest of the league, but separated by just nine points.
Bayern leads Gladbach by just three points and Schalke by four. With a trip to Dortmund still remaining on the league schedule, Bayern still has a great shot to catch the leaders, but can't stumble, either.
While Bayern played Wednesday and returns to action Saturday ahead of the last eight Champions League series against Marseille, Dortmund played its semifinal on Tuesday and visits Cologne on Sunday.
Dortmund's unbeaten run is a Bundesliga record.
Gladbach will try to rebound when it hosts Hoffenheim on Saturday.
"It's hard to accept when you're knocked out on penalties, but you have to look to the future. It was a big match, but Saturday is more important to me now," Favre said. "We have to get over it very quickly, because we can't change anything now."
Schalke hosts Bayer Leverkusen on Saturday in the other fixture involving a top-four club
Also Saturday, Krasimir Balakov debuts as coach when last-place Kaiserslautern visits Freiburg in a relegation battle, Mainz hosts Hertha Berlin, and Werder Bremen hosts Augsburg.
Wolfsburg hosts Hamburg on Friday to kick off the week's action, and Stuttgart hosts Nurnberg in Sunday's other match.