Madrid: Lionel Messi grabbed his 400th career goal while Neymar smashed a hat-trick as Barcelona stormed back to the top of La Liga with a 6-0 thrashing of Granada on Saturday.
Champions Atletico Madrid moved into second, two points behind Barca, as they beat previously undefeated Sevilla 4-0 at home.
Meanwhile, Cristiano Ronaldo's hot scoring streak continued in Real Madrid's 2-0 win at Villarreal to remain four points off the top in fourth.
Barca stretched their run of consecutive clean sheets to seven games, but rediscovered their scoring touch after being held to a 0-0 draw at Malaga in midweek as Messi and Neymar shone.
"Messi is someone who has been touched by a magic wand and he is desperate to enjoy playing football," said Barca boss Luis Enrique.
After a slow start Barca took the lead on 26 minutes as Neymar was gifted the ball inside the Granada half and surged forward before seeing his effort deflect pass the helpless Roberto via Jean-Sylvain Babin.
Messi then increased his number of assists already this season to seven as he crossed right-footed for Ivan Rakitic to head home and Neymar tapped into an empty net to make it 3-0 after Roberto had denied Munir.
Barca continued to dominate after the break and Alves provided Messi with the kind of service he has been handing out in recent weeks with a fine cross that the four-time World Player of the Year headed home.
Messi returned to being the provider for Neymar to complete his hat-trick with a cut-back that the former Santos man dispatched low past Roberto.
And the Argentine rounded off a fine afternoon by robbing the Granada defence of possession and running through to slot home his fifth goal of the season and the 400th of his career.
Sevilla had started the day level on points with Barca, but their four-match winning streak came to an end at the Vicente Calderon as Atletico produced their most complete performance since winning the title in May.
The hosts went in front after 19 minutes when Koke's deflected effort left Beto with no chance before Saul Niguez continued Atletico's streak of scoring from set-pieces when he headed home the second just before half-time.
Raul Garcia put the result beyond any doubt from the penalty spot seven minutes from time after Antoine Griezmann had been felled in the box and Raul Jimenez sealed a fine night for Atletico when he headed in his first goal for the club a minute from time.
- Madrid continue winning run -
Ronaldo, meanwhile, is now onto 13 goals from nine matches this season as Real won for the third consecutive league match at Villarreal.
Real survived an early onslaught from Villarreal and won the game with two goals in eight minutes before the break as Luka Modric drilled home the opener before Ronaldo converted from Karim Benzema's pass to register his eighth goal in a week.
"We've won a difficult game against a team that played well and caused us problems," said Real boss Carlo Ancelotti.
"But the team controlled the game. We suffered when we had to, played when we had to and I think in the end we showed a good attitude and deserved to win."
The match started at a high pace with attention from the action on the pitch only momentarily distracted by a banner from a Manchester United fans group begging Ronaldo to return to Old Trafford.
Ronaldo and his team-mates had more pressing matters at hand as Villarreal threatened to go in front as Ikechukwu Uche's low effort was well saved by Iker Casillas, whilst Argentine youngster Luciano Vietto sliced wide when well-positioned inside the box.
However, the hosts' profligacy in the final third contrasted with Madrid's killer instinct and Ancelotti's men went in front when Modric smashed home his first goal of the season from outside the box on 32 minutes.
And the visitors doubled their advantage five minutes before half-time thanks to a classic counter-attack as James Rodriguez picked out the run of Benzema and the Frenchman brilliantly teed up Ronaldo to slot home.