The hosts got off to a better start than the visitors, with De Gea making three important saves at 0-0 to deny Gomez and Trigueros early on.
After Fred caught Villarreal’s defense off guard, Ronaldo scored a magnificent lob, and Sancho finished off the scoring late on with his first goal for the club.
United now have no pressure going into their last group game against Young Boys, and they remain at the top of the standings.
The next major game for them will be against Chelsea in the Premier League on Sunday.
Regardless of the outcome of the other match tonight, Villarreal’s final group game is now a must-win for them. At the weekend, they will be facing Barcelona in the league.