Roma scored two goals in extra time to come from behind against Feyenoord and reach the Europa League semi-finals.
Jose Mourinho’s side, trailing 1-0 from the first leg, took the lead after an hour through Leonardo Spinazzola.
Igor Paixao’s late goal looked to be sending the visitors through but Pablo Dybala struck in the 89th minute to force extra time in Rome.
Stephan El Shaarawy and Lorenzo Pellegrini then made it 4-1 on the night as Roma won 4-2 on aggregate.
Roma also beat Feyenoord last season in the final of the Europa Conference League.
They face Bayer Leverkusen in the semi-finals after the German side comfortably beat Union Saint-Gilloise 4-1 in their second leg to win 5-2 on aggregate.
Elsewhere, Italian giants Juventus narrowly booked their place in the last four with victory over Sporting Lisbon and will take on Sevilla next.
With a 1-0 lead from the first leg, Adrien Rabiot netted after just nine minutes in Portugal to extend Juventus’ advantage.
Former Tottenham forward Marcus Edwards equalised but Juventus held on to win 2-1 on aggregate.