The Italian giants are now one win away from their first trophy in nine years.
Romelu Lukaku and Lautaro Martinez both scored twice as Inter Milan stormed into a first European final in 10 years with a 5-0 thrashing of Shakhtar Donetsk in Dusseldorf.
Danilo D'Ambrosio was also on target for Antonio Conte's men, who will face Sevilla in Friday's final in Cologne.
The Italian giants have endured a lean decade since winning the Champions League in 2010, but closed the gap on Juventus at the top of Serie A to just one point in Conte's first season in charge and are now one win away from a first trophy in nine years.
Martinez and Lukaku's prolific partnership has been the source of much of Inter's success and they took their tally to a combined 54 for the season.
After a slow start, Martinez rose highest to power home Nicolo Barella's cross to open the scoring on 19 minutes.
Shakhtar are one of European football's great survivors as the Ukrainian champions continue to thrive despite not playing a match in their home city of Donetsk for six years due to a war in eastern Ukraine between government forces and Russian-backed separatists.
Luis Castro's men had scored 14 goals in five Europa League games since dropping into the competition form the Champions League, but their talented array of Brazilian forwards barely laid a glove on a characteristically well-organised Conte defence.
At the other end, Martinez was always lively and only a brilliant save from 36-year-old Andriy Pyatov denied him a classy second as he won the ball 30 yards from goal and immediately lobbed the ball goalwards early in the second half.
Shakhtar had one golden chance to level when Mykola Matviyenko's cross picked out Junior Moraes, but the Brazilian-born Ukrainian international's header was too close to Samir Handanovic.
Two minutes later, Inter landed the killer blow when D'Ambrosio met Marcelo Brozovic's corner with a powerful header.
Lukaku extended his run of scoring in now 10 straight Europa League games, but the Belgian was made to wait as Pyatov got down well to save his first big sight of goal.
Martinez showed the way by finding the bottom corner with a brilliant quick hit that gave Pyatov no time to set himself after Shakhtar were caught in possession inside their own half for his 21st goal of the season.
Lukaku then got in on the act 12 minutes from time as this time Martinez played provider before his strike partner slotted low into the far corner.
Five minutes later the former Manchester United striker had his 33rd goal of the campaign by accelerating away from a slow Shakhtar backline before firing through Pyatov's legs.