Lionel Messi bagged a double alongside goals from Luis Suarez and Neymar as the 'MSN' trio ensured victory for the Blaugrana at the Camp Nou.
Barca were ahead in the 21st minute as Neymar got onto the end of Messi's pass, before taking a touch and sliding the ball into the back of the net from close range.
10 minutes later, though, Villarreal were back on level terms as Cedric Bakambu easily broke the attempted off-side trap, before curling an effort past Andre Ter Stegen.
Messi then had the hosts back in front on the brink of half-time, completing a trademark run from out wide before slotting home into the bottom corner with a left-footed shot.
Midway through the second stanza, Suarez joined in on the fun as he capped off a quick counter-attack with a low shot after beating his marker with ease.
The Catalan giants were awarded a penalty with 10 minutes to go after Suarez' lobbed pass struck the hand of a Villarreal defender, with Messi stepping up to bag his brace and seal the victory.
Luis Enrique's side moved three points clear of arch-rivals Madrid, who have two games in hand.