| Valencia moved up into fifth place, closing the gap on Villarreal and a place in the Champions League to just two points after a comfortable win over Getafe, as Atletico Madrid slumped to a shock 4-2 home defeat against lowly Osasuna, who climb to 14th courtesy of the three points.
Deportivo La Coruna failed to capitalise on Atlético's slip-up and missed the chance to move level on points, losing 3-1 to bottom-of-the-table Espanyol, whose valuable win puts them just six points adrift of fourth-from-bottom Getafe.
Barcelona and Real Madrid continued their battle at the top of the table as both sides won, while Real Betis and Numancia played out a six-goal thriller at the wrong end of the division.
Elsewhere, Villarreal were upset at Almeria, and Sevilla and Athletic Bilbao both earned victories.
Barcelona recorded a 1-0 victory at Valladolid, despite the best efforts of the home side to the contrary, thus keeping alive their dream of wrestling the title away from Real Madrid.
Fourth-placed Villarreal were stunned 3-0 at Almeria as Robert Pries was sent of for the visitors and Santi Cazorla picked up a fracture to his right foot that threatens to keep him out for the rest of the season.
Sevilla continue to chase Barca and Real as they beat Recreativo Huelva 1-0 at El Nuevo Colombino, with Kanouté scoring his 90th goal for the club and equalling Suker's all time goal-scoring record for Sevilla.
Fellow strugglers Real Betis and Numancia drew 3-3 in a thrilling match which saw three players sent off and four goals in the last fifteen minutes.
Athletic Bilbao climbed to 10th place following an important if uneventful 2-1 home win over Mallorca that put an end to a run of bad results.
Liga results:
Atletico Madrid 2 - 4 Osasuna Espanyol 3 - 1 Deportivo La Coruna Valencia 4 - 1 Getafe Sporting Gijon 0 - 2 Racing Santander Recreativo Huelva 0 - 1 Sevilla Valladolid 0 - 1 Barcelona Almeria 3 - 0 Villarreal Real Betis 3 - 3 Numancia Malaga 0 - 1 Real Madrid Athletic Bilbao 2 - 1 Mallorca
Liga standings after 29 games: 1 Barcelona 72 2 Real Madrid 66 3 Sevilla 57 4 Villarreal 48 5 Valencia 46 6 Atletico Madrid 43 7 Malaga 43 8 Deportivo La Coruna 43 9 Real Valladolid 39 10 Racing Santander 36 11 Almeria 34 12 Athletic Bilbao 34 13 Sporting Gijon 33 14 Osasuna 32 15 Real Mallorca 32 16 Getafe 31 17 Real Betis 31 18 Recreativo Huelva 30 19 Numancia 27 20 Espanyol 25
Liga Fixtures: Saturday 11th April
19:00 Barcelona vs Recreativo Huelva 21:00 Villarreal vs Malaga
Sunday 12th April 16:00 Mallorca vs Almeria 16:00 Numancia vs Espanyol 16:00 Osasuna vs Athletic Bilbao 16:00 Racing Santander vs Real Betis 16:00 Real Madrid vs Valladolid 16:00 Sporting Gijon vs Valencia 18:00 Sevilla vs Getafe 20:00 Deportivo La Coruna vs Atletico Madrid |