Real Madrid staged a storming second-half comeback to beat Real Betis 5-3 in an eight-goal La Liga thriller.

Marco Asensio (2), Sergio Ramos, Cristiano Ronaldo and Karim Benzema were on target as the Spanish champions recovered from a 2-1 interval deficit to avenge Betis' Bernabeu victory in September.

Aissa Mandi and a Nacho own goal saw Betis' first-half superiority rewarded, while Sergio Leon gave the hosts late hope until Benzema struck in stoppage time.

Among the madness, Madrid became the first team in La Liga history to reach 6,000 goals in the competition.

Meanwhile, Atletico Madrid kept up their chase of league leaders Barcelona with a 2-0 home victory over Athletic Bilbao.

Kevin Gameiro and Diego Costa struck second-half goals to make it four straight league wins for Atletico, and reduce Barcelona's lead at the top once more to seven points.

Jose-Maria Gimenez's stretching volley, which flew a yard wide, was the nearest Atletico came to scoring in a first period which lacked any real rhythm.

But Diego Simeone's side might have had penalties when Costa and Gimenez were both bundled to the floor.

There was more intensity to Atletico's play after the break and Costa forced Bilbao goalkeeper Kepa into a smart save before Angel Correa and Antoine Griezmann had attempts.

The deadlock was broken after 67 minutes when Correa, Saul Niguez and Griezmann combined for substitute Gameiro to drill home a low shot.

Gameiro then set up Costa 10 minutes from time, the Spain striker finishing smartly for his second league goal since returning to action last month.

Bilbao have now gone six league games without a win as their slide down LaLiga continues.

Real Sociedad bounced back from a 5-2 thumping at Real Madrid to ease to a 3-0 win at home to Levante, who stay two points above the relegation zone.

The home side got off to the perfect start as Xabi Prieto put them ahead from the penalty spot in the seventh minute following Sasa Lukic's pull on Imanol Agirretxe.

Prieto was forced off through injury shortly afterwards but his replacement Sergio Canales set up the second goal for Juanmi before the break.

A stunning solo effort from Canales in the 54th minute made it three as Sociedad comfortably saw out the game.

Espanyol edged away from the bottom three as Esteban Granero's late equaliser secured a 1-1 draw with Villarreal.

Pablo Fornals struck a post for Villarreal before Rodrigo put the visitors ahead in the 25th-minute with his first LaLiga goal, the young midfielder smashing home after Enes Unal's shot had been blocked.

Sixth-placed Villarreal almost extended their lead when substitute Carlos Bacca rounded home goalkeeper Carlos Lopez only to be crowded out by defenders.

Espanyol did not manage an on-target attempt until Gerard's speculative overhead kick 10 minutes from time.

But mounting home pressure saw Granero curl an 18-yard free-kick over the Villarreal wall, and Espanyol almost won it in stoppage time when Leo Baptistao's shot came back off the crossbar.