Marvellous hattricks, VAR controversy and players refusing to come off. The weekend in European football had it all.

La Liga

Barcelona trailed Sevilla twice in their weekend clash, but when you have a player as good as Lionel Messi in your side, you can rest assured knowing he can dig you out of the mud. Messi scored one of the finest hattricks you will ever see to lead Barça to a 4-2 win on the road, as Luis Suarez also found the back of the net.

Real Madrid won in very controversial circumstances when they were awarded two penalties in their match against Levante. Both were awarded by the VAR and bother were highly contentious. Nevertheless, all three points went to Real as Karim Benzema and Gareth Bale scored from the spot – 2-1 the final score.

Atlético Madrid backed up their win over Juventus with a solid 2-0 victory over Villarreal. Alvaro Morata scored his first goal for his new club after being denied midweek in the Champions League. Saúl added a second minutes from time to seal the win for Atléti.

Other results:

Espanyol 1-1 Huesca

Getafe 2-1 Rayo Vallecano

Alavés 0-0 Celta Vigo

Athletic Bilbao 1-0 Eibar

Leganés 1-1 Valencia

Real Valladolid 0-2 Real Betis

Girona 0-0 Real Sociedad


Borussia Dortmund came into their match with Bayern Leverkusen without a win in five matches across all competitions. Bayer started the match the better of the two sides, but it was Dortmund who took the lead through Dan-Axel Zagadou. Bayer equalised minutes later through Kevin Volland, before a stunning Jadon Sancho volley put Dortmund ahead once more. Mario Götze made it 3-1 to Dortmund who seemed like they were cruising but would have felt nervous when Jonathan Tah pulled one back. 3-2 the final score at Signal Iduna Park.

Bayern Munich continued their strong domestic form by defeating Hertha Berlin 1-0 at Allianz Arena. Javi Martinez was the difference between the two sides – his goal coming in the 62nd minute. Bayern keep the pressure up on Dortmund but are still three points behind.

Borussia Mönchengladbach are beginning to show signs of a mid-season slump as they fell 3-0 to Wolfsburg at home. It’s their second home loss in three weeks – the other coming at the hands of Hertha, also 3-0. They hold their position in third for now, however are being chase by several teams, Wolfsburg included.

Other results:

Werder Bremen 1-1 VfB Stuttgart

SC Freiburg 5-1 FC Augsburg

Mainz 3-0 Schalke

Fortuna Düsseldorf 2-1 Nürnberg

Hannover 0-3 Eintracht Frankfurt

RB Leipzig 1-1 Hoffenheim


Premier League

Liverpool and Manchester United clashed at Old Trafford as Liverpool looked to go three points ahead atop the table. United were forced to make all their substitutes in the first half as Ander Herrera, Juan Mata and Jesse Lingard suffered injuries. The points were shared as neither side could find the back of the net – the spectacle not living up to its expectations.

Burnley sprung one of the surprises of the season, defeating the in-form Tottenham 2-1. The match saw the return of Spurs striker Harry Kane, who returned from an ankle injury, however his goal wasn’t enough for his side. Goals to Chris Wood and Ashley Barnes secured all three points for a Burnley side who have impressively climbed the table.

Arsenal jumped back into fourth place on the table as they took care of Southampton 2-0. The Gunners struck twice inside 17 minutes through Alexandre Lacazette and Henrikh Mkhitaryan, putting a dent in the Saints’ survival hopes.

BONUS: Carabao Cup Final

Manchester City and Chelsea faced off for the first piece of silverware this season in the Carabao Cup Final. The game ended 0-0 after 120 minutes – City winning 4-3 in a penalty shoot-out. The most astonishing part of the match however was when Chelsea goalkeeper Kepa Arrizabalaga refused to be substituted off just prior to the spot kicks. The club have deemed the situation as a misunderstanding.

Other results:

Cardiff 1-5 Watford

West Ham 3-1 Fulham

Bournemouth 1-1 Wolves

Newcastle 2-0 Huddersfield

Leicester 1-4 Crystal Palace

Serie A

Fiorentina and Inter played out the match of the weekend – the two sides sharing the points in a 3-3 thriller. Fiorentina led after just 15 seconds, only for Inter to take a commanding 3-1 lead in the 52nd minute. A Luis Muriel thunderbolt followed by a 101st minute penalty rescued a point for the home side and put a world of pressure on the Nerazzurri in the process, as a top four finish in now under threat.

Juventus bounced back from their dismal display against Atlético Madrid with a 1-0 win over Bologna. The Bianconeri were uncharacteristically shaky in defence, as the home side had numerous chances to cause an upset, but it was Paulo Dybala who struck for Juve on 67 minutes to seal the win.

Napoli were totally dominant over a mid-table Parma outfit. A superb brace from Arkadiusz Milik was added to by strikes from Piotr Zieliński and Adam Ounas, rounding out a 4-0 win for the away side.

Roma could not have left it any later in the match against Frosinone, as Edin Dzeko struck in the 95th minute to win it for his side. On the verge of dropping a valuable two points, Dzeko popped up to tap home from close range, putting Roma in a favourable position to qualify for the Champions League.

Other results:

Milan 3-0 Empoli

Torino 2-0 Atalanta

Sampdoria 1-0 Cagliari

Chievo 0-0 Genoa

Sassuolo 1-1 SPAL

Ligue 1

Monaco recorded their most important win of the season as they defeated third place Lyon. Two counter-attacking goals from Gelson Martins and Rony Lopes were enough to secure a 2-0 win for the home side, who are remarkably outside the relegation zone and potentially on track to survive.

Paris Saint-Germain were clinical in their 3-0 win over Nîmes. Christopher Nkunku opened the scoring at the Parc des Princes, before Kylian Mbappe scored a brace to become the youngest player in history to score 50 goals in Ligue 1.

Bottom placed Guingamp won just their fourth game of the season in astonishing fashion, as Lucas Deaux struck in the 92nd minute. The win fails to seem them lift of the bottom of the table, however will give them a glimmer of hope that they can join Monaco in surviving Ligue 1.

Other results:

Dijon 0-1 St Etienne

Strasbourg 1-1 Lille

Amiens 1-0 Nice

Montpellier 2-4 Reims

Nantes 1-0 Bordeaux

Toulouse 1-1 Caen

Rennes 1-1 Marseille

Damon Palmar