But it was a controlled display by United, who had settled quickly, forcing Diego Lopez into an early save when Anderson shot across goal from a wide angle.
Playing a measured brand of football, the visiting team looked to get behind the Villarreal defence and did so after eight minutes, with Rooney slotting home from a Patrice Evra pull-back only for the effort to be ruled out for an offside against the France defender.
The Villarreal keeper made regulation saves from Ronaldo and Fletcher, returning to the United line-up after injury as one of five changes from the side that drew at Aston Villa on Saturday.
But it was a truly spectacular effort from Diego Lopez to tip a thunderous strike from Ronaldo on to the crossbar late in the opening half.
Villarreal, comfortable on the ball if lacking in ambition, did cause United occasional problems and Tomasz Kuszczak had to be alert to parry a strike from Santi Cazorla.
Several Villarreal players were incensed shortly after the restart when Rooney went down in the penalty area. Fabricio Fuentes was in close attendance but there did not appear to be any contact.
Diego Lopez kept out another shot from Ronaldo and two weak strikes from Anderson while Villarreal, who had lost skipper Marcos Senna to injury at the break, gradually showed some attacking intent.
Soriano Bruno impressed after replacing Senna and almost picked out the impressive Guiseppe Rossi with a cross from the left while three Villarreal players tried but failed to make contact with a teasing ball from the right.
Rooney had a shot on the turn saved but the nearest the half came to a goal after the break was after the forward's cross from the left took a deflection and headed towards goal with the keeper stranded.
Capdevila headed the ball out for a corner but shortly afterwards was sent from the field.
Villarreal: Diego Lopez, Javi Venta, Rodriguez, Fuentes, Capdevila, Santi Cazorla, Senna (Bruno 46), Eguren, Pires (Fernandez 65), Rossi (Franco 78), Ibagaza.
Subs Not Used: Viera, Edmilson, Cygan, Angel.
Sent Off: Capdevila (82).
Booked: Javi Venta, Eguren, Fuentes.
Man Utd: Kuszczak, O'Shea, Ferdinand, Evans, Evra, Ronaldo, Fletcher (Gibson 80), Carrick (Tevez 86), Nani (Park 85), Anderson, Rooney.
Subs Not Used: Foster, Giggs, Vidic, Rafael Da Silva.
Booked: Evra, Ronaldo.
Ref: Roberto Rosetti (Italy).
BBC Sport Player Rater man of the match: Manchester United's Wayne Rooney with 6.74 (on 90 minutes).
Please note that you can still give the players marks out of 10 on BBC Sport's Player Rater after the match has finished.
This page is best viewed in an up-to-date web browser with style sheets (CSS) enabled. While you will be able to view the content of this page in your current browser, you will not be able to get the full visual experience. Please consider upgrading your browser software or enabling style sheets (CSS) if you are able to do so.