Efter 2-6 i första mötet var det inte mycket som talade för att Roma skulle nå Europa League-final.
Men även om chansen var liten såg man till att bjuda på en underhållande match i andra mötet med Manchester United.
Cavani inledde målskyttet för United i första halvlek och kvitterade även i andra men däremellan hade Roma hunnit med att göra två mål genom Edin Dzeko och Bryan Cristante.
Och det blev inga fler mål från någon spelare i det italienska laget, men trots det lyckades man vinna.
I den 83:e minuten tog bollen på Uniteds Alex Telles och hittade in bakom David De Gea.
3-2 till Roma blev slutresultatet men United gick vidare med totalt 8-5.
– Nu ska vi komma till finalen och vinna den. Edinson gjorde två jättefina mål och hans rörelse och arbete utan bollen är fantastiskt, säger Manchester Uniteds lagkapten Harry Maguire till BT Sport efter matchen.
Därmed ställs United mot Villareal som besegrade Arsenal i den andra semifinalen.
UEFA Europa League

AS Roma
3 - 2

Manchester United
Första halvlek
- 18'
Wan-Bissaka
- Darboe
Smalling
30' - 39'0 - 1
Cavani (Fred)
Halvtid
- 46'Williams
Wan-Bissaka
- 46'Telles
Shaw
Andra halvlek
- 1 - 1
Džeko (Pedro)
57' - 58'
Fred
- 2 - 1
Cristante (Pellegrini)
60' - 64'Matic
Pogba
- 68'2 - 2
Cavani (Fernandes)
- Santon
Peres
69' Karsdorp
72'- 72'
Cavani
- 73'Rashford
Cavani
- Mayoral
Džeko
76' - Zalewski
Pedro
76' - 3 - 2
Telles
83' Cristante
84'- 84'Mata
Fernandes
- 90'+2'
Williams