Lionel Messi made it 51 goals for the season as Barcelona turned up the heat on Real Madrid with a thumping 4-1 home win over Villarreal in LaLiga.
Messi created the opening goal for Neymar and netted himself with a deflected strike and a late penalty as Barcelona moved three points clear of Real at the top of the table.
The capital club, though, have two games in hand, the first at relegated Granada tonight.
Messi’s first cancelled out Cedric Bakambu’s equaliser, while his second rounded off the scoring, with Luis Suarez having given the hosts a two-goal cushion.
Luis Enrique’s side went into the Nou Camp clash in awesome scoring form, with 13 goals in their last three games.
And they went in front in the 21st minute when Messi’s shot from the left of the area was deflected into Neymar’s path and the Brazilian took a touch before stabbing the ball calmly past goalkeeper Andres Fernandez.
But Barcelona looked anything but solid at the back and they conceded 11 minutes later.
A simple through-ball cut the defence wide open and Bakambu raced clear, leaving Gerard Pique in his wake before beating Marc-Andre ter Stegen at his near post.
Messi made it 2-1 on the stroke of half-time, bursting inside from the right and seeing his low shot from the edge of the area deflected into the right corner, past the wrong-footed Fernandez.
It was the Argentinian’s 50th goal in all competitions this season, the fifth time in his career he has achieved the feat.
And Luis Suarez sealed the three points with a breakaway goal in the 69th minute, tricking his way past his man on the right of the area and rifling a low shot into the far corner.
Messi added a fourth in the 82nd minute with an impudent Panenka penalty.
Saul Niguez’s strike ensured third-place Atletico Madrid beat Eibar 1-0 at the Vicente Calderon to edge closer to Champions League group stage qualification.
Niguez struck 20 minutes from time when he latched onto a ball from Diego Godin and drilled home a left-footed shot from the edge of the box.
Godin was then sent off in stoppage time after picking up two yellow cards in the space of two minutes.
READ MORE: Novak Djokovic suffered accident
But the win sent Atletico five points clear of fourth-placed Sevilla with only six left to play for.
Sporting Gijon gave their survival hopes a major boost with a 1-0 win over Las Palmas at El Molinon.
Carlos Carmona gave them a first victory in eight that moved them within three points of 17th-placed Leganes.