
With a 4-0 first leg advantage to work with, an early strike from the Spanish side's Rafael Santos Borre threatened to make things interesting - especially as the Giallorossi continued to play with a little less than the breathtaking fluidity fans have seen in recent weeks.
But some great saves from Alisson Becker ensured the visitors never really came close to finding a second goal - which could have put the cat amongst the pigeons - as the Giallorossi eventually held on to progress with ease.
Other than the result, there was one further disappointment for coach Luciano Spalletti - as Antonio Rudiger received a red card after picking up two quick yellows.
Nevertheless, Roma are into Friday's draw - the main target from what originally promised to be a very tough tie.
Coach Luciano Spalletti made a number of changes to his side, given the first leg advantage, and confirmed prior to kick-off that both Alisson and Francesco Totti would start.
Elsewhere there were also starting berths for Mario Rui, Juan Jesus and Thomas Vermaelen - with Diego Perotti and Stephan El Shaarawy supporting Totti in attack.
10' - A half-chance for Villarreal - Roberto Soriano's ambitious side-footed attempt kisses the bar and goes over.
15' - Goal. An early strike for the visitors - Santos Borre pounces in the box and lashes home from 10 yards... 0-1.
30' - A couple of moments of class from the captain enliven the crowd. A dangerous pass causes panic, then a bold volley flies over...
33' - Great save from Alisson! The Brazilian palms away Hernandez's powerful effort!
40' - Another good save from Alisson, this time to deny Roberto Soriano from range!
See more images in our match gallery.
49' - Alisson comfortably tips away Borre's rising effort, after Villarreal break in behind the defence...
52' - CHANCE FOR ROMA! El Shaarawy crosses for Perotti, but his header is held by the goalkeeper!
54' - Another attempt on goal from Perotti, and another save from Fernandez!
62' - Totti drives a free-kick at goal - it is deflected but the referee waves away appeals for a penalty...
78' - CHANCE FOR TOTTI! Perotti runs down the left and squares for the striker, but he fires just over the bar!
80' - Red card. Ahead of a free-kick there is a scuffle in the box - and in the aftermath Rudiger is shown a 2nd yellow... Roma down to 10.
89' - Another great save from Alisson, as he again denies Roberto Soriano...
See more game statistics in our dedicated match centre.
"I think the display is all down to the team I picked. I put [Diego] Perotti and [Stephan] El Shaarawy out wide and they tracked back with the full-backs and ended up getting caught on the defensive line. I caused a few issues because I worked them harder than I planned to yesterday, so I hold my hands up."
- Luciano Spalletti
The draw for the next round of the Europa League takes place on Friday, at 13:00 CET.
The club's next Serie A encounter is against Inter Milan on Sunday, before Wednesday sees them face Lazio in the first leg of their Coppa Italia semi-final.
Saturday then sees another Stadio Olimpico encounter, as Napoli come to town for a huge Serie A meeting.
A big 10 days for the Giallorossi.
Goalscorers: Santos Borre (15')
Roma: Alisson; Jesus, Manolas (Rudiger), Vermaelen; Mario Rui, De Rossi (Nainggolan), Paredes, Peres (Fazio); Perotti, El Shaarawy; Totti.
Villarreal: Andres Fernandez; Angel, Bonera, Alvaro, Rukavina; Cheryshev (Bakambu), Bruno Soriano, Hernandez, Roberto Soriano; Santos Borre, Soldado (Adrian).