Jose Antonio Reyes got the ball rolling after five minutes for Atletico before the dangerous Giuseppe Rossi brought parity to proceedings 10 minutes before half-time.
Atletico's highly-rated front two of Diego Forlan and Sergio Aguero then made their presence felt, scoring within four minutes of each other to ensure the home win.
Reyes' goal came from the first meaningful shot of the match, a fine curling effort from 20 yards that got the home crowd going right from the off.
Forlan tried to match his team-mate from similar range in the ninth minute but his radar was wayward.
It took Villarreal 26 minutes to turn any of their possession into a shot on goal and even then Ruben Cani's attempt was charged down by Alvaro Dominguez.
Dominguez then opened the door to the equaliser, fouling Nilmar in dangerous territory and earning a yellow card for his trouble.
The caution was not the worst of it, though, with Santi Cazorla's free-kick finding Rossi, who drilled home left-footed from the edge of the area.
Chances were few and far between in the 10 minutes either side of half-time and Reyes attempted to enliven proceedings with a snap-shot from 12 yards, unsuccessfully.
Both teams began taking regular shots at goal, Tiago, Cazorla and Forland all fancying their chances.
Rival goalkeepers David De Gea and Diego Lopez both had saves to make but neither man was stretched too much.
That changed in the 68th minute when Filipe Luis fed Aguero inside the area and the Argentinian produced a low finish past Lopez.
That goal put Villarreal firmly on the back foot and they leaked a third four minutes later when Reyes turned creator for Forlan to convert from six yards.
Marco Ruben forced De Gea into the save of the game soon after.
With 90 minutes on the clock Lopez produced a fine double save to deny Paulo Assuncao and Forlan.