Jose Mourinho’s Roma remain on track for a second European trophy in two seasons, after a 0-0 draw at Bayer Leverkusen sent them through 1-0 on aggregate on Thursday.
The Europa Conference League holders created little in attack but defended doggedly, as the increasingly frustrated home side peppered their goal in search of an equaliser.
The visitors held on through eight minutes of added time and will face either Juventus or Sevilla in the final in Budapest in late May.
Roma came into the game holding onto a narrow 1-0 lead, thanks to a second-half goal from Rome-born midfielder Edoardo Bove in the first leg.
Mourinho, known for his defensive tactics, has stayed true to form this Europa League season, with the Europa Conference League holders conceding just three goals in eight knockout games on the way to the final.
Leverkusen, who have beaten Bayern Munich, Atletico Madrid and RB Leipzig at home this season, started brighter, with 20-year-old creator Florian Wirtz pulling the strings in midfield.
Wirtz linked with France forward Moussa Diaby after 12 minutes and the Paris Saint-Germain junior rattled the crossbar.
The same combination linked again ten minutes later, Diaby heading just wide.
Iran striker Sardar Azmoun was pulled down on the counter on the edge of the box with the first-half winding down but the referee waved the incident away despite the protests of the home players.
Lekerkusen’s Spanish coach Xabi Alonso brought on French winger Amine Adli and the French winger almost created the equaliser, finding Azmoun in the box — but the Iranian dragged his shot just wide.
With the clock winding down, the home fans became increasingly incensed with the visitors’ stalling tactics, resulting in eight minutes of added time.
As the full-time whistle went, an elated Mourinho went directly to the visiting fans, shaking the net.
For Roma, who are six points off fourth spot in Serie A with three games to play, the victory not only means a shot at a maiden Europa League title, but a chance at making next year’s Champions League.
Despite the elimination, Leverkusen’s short term looks bright, with Alonso, who has lifted Leverkusen from the relegation spots to a European semi-final since taking over late last year, declaring he would be at the BayArena next season.