Jude Bellingham scored twice as Real Madrid took El Clasico honours with a 2-1 win at Barcelona.
The England midfielder struck with a 30-yard drive to cancel out Ilkay Gundogan’s early goal for the hosts.
Bellingham then volleyed a stoppage-time winner to take his goal tally to 13 in 13 appearances since moving to Madrid from Borussia Dortmund.
Goals from Lucas Ocampos and Ivan Rakitic saw Sevilla come from 2-0 down to draw 2-2 in Cadiz, Las Palmas won 2-1 at Almeria and Mallorca were held 0-0 at home by Getafe.
In the Bundesliga, Harry Kane scored a hat-trick – including a goal from inside his own half – as Bayern Munich thumped Darmstadt 8-0.
Joshua Kimmich was sent off after just four minutes, but red cards for Klaus Gjasula and Matej Maglica ensured the hosts had the man advantage at the break after a goalless first half.
Kane’s second goal was a magnificent effort from four yards behind the halfway line. Jamal Musiala and Leroy Sane scored two apiece and Thomas Muller was also on target.
Bayern moved to the top of the table after Stuttgart slipped up 3-2 at home to Hoffenheim.
Borussia Monchengladbach beat Heidenheim 2-1, Augsburg were 3-2 winners at home to Wolfsburg, Werder Bremen sank Union Berlin 2-0 and Leipzig thumped Cologne 5-0.
Andrea Cambiaso struck with virtually the last kick of the game as Juventus climbed to the top of Serie A with a 1-0 win over Verona.
Moise Kean had earlier seen two goals disallowed by VAR as Verona chased an unlikely point in their battle against relegation.
But Verona have never won away at Juventus in Serie A history, and that record now stands at 33 matches, following a heartbreaking defeat.
In the seventh minute of stoppage time, Arkadiusz Milik’s header came back off the inside of the far post and Cambiaso smashed in the rebound.
Alessandro Buongiorno goal just before half-time gave Torino a 1-0 win at Lecce, while Sassuolo drew 1-1 at home to Bologna
In France, two penalties from Florian Sotoca helped Lens to a 4-0 win over Nantes and Reims beat Lorient 1-0.