Bayern Munich reached a third successive DFB-Pokal final thanks to a 2-1 win over Eintracht Frankfurt, with Robert Lewandowski's winner 16 minutes from time setting up a clash with Bayer Leverkusen.
Hansi Flick's men were made to work for the victory in the second half after seeing their standards slip, but their superior individual quality eventually shone through as Lewandowski netted his 45th goal of the season.
Ivan Perisic put Bayern in front with less than a quarter of an hour played by nodding in an inch-perfect pass from the excellent Thomas Muller and they should have been coasting to the win by half-time, with the defending champions spurning several opportunities.