Robert Lewandowski netted a second-half winner as holders Bayern Munich qualified for a third successive German Cup final after beating Eintracht Frankfurt 2-1 on Wednesday.
Despite a superb first half, in which they took the lead through Ivan Perisic, Bayern were made to sweat after completely losing their rhythm.
This happened after the break as they allowed their opponents to come back into the match with a goal from Danny Da Costa.
“In the first half, we should have scored more goals.
“In the second half, we did not do it well,’’ Bayern coach, Hansi Flick, said.
“But it was a Cup game and at the end it was a deserved qualification.
“It could have been an easier second half if we had done it better in the first.’’
Bayern will now play Bayer Leverkusen in the final on 4 July.
Leverkusen cruised past fourth tier Saarbruecken 3-0 on Tuesday for the final.
Having all but secured the Bundesliga title and chasing a 20th German Cup crown, the Bavarians were unstoppable in the first half and an unmarked Perisic headed in a Thomas Mueller cross for the lead in the 14th minute.
They should have scored several more with Perisic, Kingsley Coman and Lewandowski repeatedly going close as the visitors were completely outclassed in the first half.
Frankfurt, who beat Bayern in the 2018 final, came out transformed after the break and snatched an equaliser through substitute Da Costa in the 69th.
Yet, Lewandowski scored the winner five minutes later with Bayern’s only real chance in the second half after confusion in the Frankfurt.