Atletico Madrid lost their outright lead at the top of La Liga, their defeat at Almeria providing the story of the weekend. With Barcelona and Real Madrid both winning against Sevilla and Villarreal respectively, the top three are all level on 57 points, Barca having the advantage of a superior goal difference.

Barcelona returned to winning ways with a 4-1 win at rain-soaked Sevilla. The Catalans made a bad start when Alberto Moreno latched on to a pass from Ivan Rakitic to beat Marc Bartra and Victor Valdes to give the Andalusians a 15th minute lead. Alexis Sanchez levelled on 34 minutes, though his goal from Lionel Messi’s free kick had more than a suspicion of offside about it. Sevilla continued to press their opponents and spurned several chances to restore their lead.

Messi then put Barca in front just before half-time, as torrential rain threatened to halt the proceedings, with his first goal in La Liga since September. The rain abated after the restart, but a sodden pitch failed to prevent both sides playing some attractive passing football. The Argentine added to his tally on 56 minutes and Barca were cruising as substitute Cesc Fabregas chipped over Beto for Barca’s fourth with just a few minutes remaining.

Here are the highlights from all of the goals in this gameweek:

Leaders Atletico Madrid suffered a shock 2-0 defeat at Almeria as coach Diego Simeone made a number of changes following the midweek Copa del Rey loss to Real Madrid and was crucially without injured goalkeeper Thibaut Courtois. Atleti struggled throughout, failing to trouble Esteban Suarez in the Almeria goal and, as their frustrations became apparent, Almeria grew in confidence. A dull game sprang to life as Aleix Vidal struck a shot which hit both posts before bouncing clear.

Moments later the home fans were celebrating a stunning goal from Jose Antonio Verza who curled the ball into the top corner leaving stand-in keeper Daniel Aranzubia stranded. It immediately got worse for Atleti as Aranzubia failed to take a routine back pass cleanly, brought down Jonathan Zongo in the process and received a straight red card for his error. With all three substitutes used, midfielder Gabi went between the posts but Verza lashed his penalty high into the net, sealing the win to take Almeria up to 15th, four points clear of the relegation zone.

Real Madrid beat Villarreal 4-2 to maintain their title challenge. Carlo Ancelotti was without the suspended Cristiano Ronaldo, but the front three of Gareth Bale, Karim Benzema and Jese Rodriguez were all on target as Madrid had too much for their opponents in an exciting encounter. Sidelined since January with a calf injury, Bale made an instant impact on his return, opening the scoring after six minutes after defender Chechu Dorado hesitated on the ball and Bale stole in to lift it over goalkeeper Sergio Asenjo.

It was 2-0 when Bale crossed to find Benzema but Madrid were jolted when Mario cut their lead just before half-time. Jese restored the two-goal cushion on the hour but Giovani Dos Santos again narrowed the gap for Villarreal with a sublime left-footed curling free-kick from 22 yards. Benzema grabbed his second and Madrid’s fourth, drilled home a low first-time shot from Jese’s pass to ensure victory for Los Blancos.

Athletic Bilbao remain fourth but are 13 points behind the top three after a goalless draw with Celta Vigo at Los Balaidos. Celta dominated the first half against a lacklustre Athletic side and although the visitors came back into the game in the second period, neither they nor their hosts could fashion a winner. Charles missed the best chance for Celta when his shot rattled against a post, While Athletic spurned two good opportunities in the final minutes. Kike Sola just failed to get on the end of Oscar De Marcos’ low cross and then Iker Muniain shot just wide from an Ibai Gomez cross.

Programming note: For viewers in the United States, La Liga games are shown exclusively on beIN SPORT, beIN SPORT Espanol and DishWorld. Even if you don’t have a TV subscription to beIN SPORT, you can access those channels via online streaming service DishWorld for $10/month. Read our review of DishWorld. And sign up for DishWorld via their website.

Levante had Keylor Navas to thank for a point from a 0-0 draw against Real Sociedad at Anoeta. The Basques had more possession and created more chances than the visitors, who were once again grateful to Costa Rican goalkeeper Navas for making a number of crucial saves and keeping a clean sheet. Carlos Vela came closest to scoring, but his second half effort was ruled offside. La Real remain sixth in the table, seven points behind Athletic and three adrift of fifth-placed Villarreal while Levante, who are unbeaten in their last five league games, drop down to 10th.

Revitalised Valencia followed up their win at Camp Nou last weekend by thrashing rock bottom Real Betis 5-0 at Mestalla to move up to eighth in La Liga. Los Che Valencia began positively and took the lead after 41 minutes through a header by Jeremy Mathieu. Paco Alcacer doubled the home side’s advantage on the stroke of half-time, and added his second in the 67th minute, soon after Sofiane Feghouli had made it 3-0. Eduardo Vargas marked his full debut for Valencia by scoring the fifth goal with 11 minutes remaining.

A late winner ended Espanyol‘s run of four games without a win as Los Periquitos finished 1-0 winners over Granada, despite playing for an hour with 10 men. Javier Aguirre’s side lost Victor Alvarez after just half an hour when the defender fouled Youssef El-Arabi on the edge of the area and received a straight red card. The game looked to be heading towards stalemate as El Grana failed to make their advantage count and Hector Moreno made them pay, heading the winner from a 79th-minute corner to earn three much-needed points for the home side, while Granada slipped towards the drop zone.

Struggling Rayo Vallecano outplayed 10-man Malaga to win 4-1 at Los Vallacas, but remain in the relegation zone, with their opponents also in danger of being sucked into a relegation battle. Iago Falque put the Madrid side ahead after 25 minutes and Anaitz Arbilla doubled their lead two minutes later. Malaga had Sergio Sanchez sent off just before half time, the defender receiving a second yellow card for a foul on Joaquin Larrivey and the Argentine striker putting away the resulting penalty himself. Falque grabbed his second to make it four on the hour and, although substitute Oleksandr Iakovenko pulled one back from Malaga on his debut, Bernd Schuster’s side were well beaten.

Osasuna moved further away from the relegation zone with a win 2-0 over Getafe in Pamplona. Oriol Riera fired the Basque side ahead in the seventh minute, latching on to Francisco Silva’s pass and lobbing goalkeeper Miguel Moya from 18 yards, but it was struggling Getafe who dominated. Osasuna improved in the second half and eventually got a second goal through Roberto Torres to move four points clear of the bottom three and extend Getafe’s winless league run to eight games.

Elche threw away a two-goal lead at lowly Real Valladolid as Humberto Osorio hit a second-half double to salvage a valuable point in the home side’s battle to avoid relegation. Ferran Corominas gave Elche the lead in the first half and Manu del Moral doubled the Alicante side’s advantage after the break, but Osorio clawed Valladolid level with goals in the 71st and 83rd minutes. The 2-2 draw leaves Juan Ignacio Martinez’s men three points from safety.