Bruno Fernandes and Edinson Cavani each scored twice as Manchester United took a huge stride towards the Europa League final by coming from behind to thrash an injury-hit Roma 6-2 at Old Trafford.
Fernandes’s early opener was quickly cancelled out by Lorenzo Pellegrini’s penalty before Edin Dzeko put Roma in front at half-time.
But the Italians lost three players to injury before the break and United took advantage with a dominant second-half performance.
Two predatory finishes from Cavani turned the tie around before Fernandes also fired home from the spot.
Paul Pogba and Mason Greenwood rounded off the scoring in a sensational second-half performance.
United are aiming to get to a final under Ole Gunnar Solskjaer at the fifth time of asking after four semi-final defeats in the past two seasons.
But only a second leg collapse will prevent them from facing Villarreal or Arsenal in Gdansk on May 26.
In contrast to the vast majority of games this season, United came flying out the blocks and led after just nine minutes.
Pogba and Cavani teed up Fernandes, who dinked the ball over the advancing Pau Lopez for his 25th goal of the season.
Roma fans had urged their side to “make sure he remembers us” after taking umbrage to Solskjaer’s admission he did not know much about the current Roma squad in his post-match interview after seeing off Granada in the quarter-finals.
Sitting seventh in Serie A, this competition represented Roma’s last realistic chance to qualify for the Champions League next season and they reacted like a side whose season depended on it.
Pogba was penalised for handball as he slid in to try and block Rick Karsdorp’s cross and Pellegrini confidently beat David de Gea from the spot.
Dzeko was a persistent thorn in United’s side in four years as a Manchester City player and scored for the sixth time at Old Trafford when he tapped home Pellegrini’s low cross on 34 minutes.
By that stage Jordan Veretout and Lopez had hobbled off injured and Leonardo Spinazzola followed before the break, leaving Roma without the chance to make any further substitutions in the second-half.
United seized upon their opportunity with arguably their best 45 minutes of the season after the break.
Another fine team move involving Pogba, Fernandes and Cavani ended with the Uruguayan firing into the top corner three minutes into the second-half.
Cavani was then guilty of missing a glorious chance from Luke Shaw’s cutback, but was in the right place for a tap in when substitute goalkeeper Antonio Mirante parried Aaron Wan Bissaka’s shot into his path.
Two Roma players Solskjaer would have been aware of were Henrikh Mkhitaryan and Chris Smalling, who were both making their return to Old Trafford.
Smalling had a night to forget, but was harshly penalised when he clashed with Cavani as a ball flashed across the Roma goal.
Fernandes was clinical from the spot to give United breathing space.
The Portuguese turned provider for Pogba to power home a header 15 minutes from time.
And Greenwood came off the bench to land the final blow as he rounded off a counter-attack thanks to some more weak goalkeeping by Mirante.