Atletico's Sergio Aguero celebrates after scoring a goal against Barcelona during Sunday's game. ((Daniel Ochoa de Olza/Assocaited Press))

Atletico Madrid rallied from two goals down to beat Barcelona 4-3 on Sunday, with Sergio Aguero scoring his second goal in the 89th minute to leave the Spanish leader just four points ahead of second-placed Real Madrid.

Barcelona's run to the Spanish soccer title looked irresistible at the start of the year after a record-breaking run gave it a 12-point lead in the standings.

But now the Catalan giant is showing uncharacteristic frailty, and it was a defensive error that allowed Aguero to slot the ball past goalkeeper Victor Valdes to secure all three points for Atletico.

Diego Forlan also scored two, his second a penalty in the 80th minute after Thierry Henry brought down substitute Florent Sinama-Pongolle inside the area.

Forlan had started Atletico's comeback in the 32nd with a long-range strike after Henry and Lionel Messi had put Barcelona 2-0 up inside half an hour.

Aguero drew Atletico level with an individual effort ten minutes into the second half before Henry scored his second of the night in the 73rd when Eidur Gudjohnsen set up the French striker for an easy score after a two-on-one break.

Atletico goalkeeper Leo Franco made a fine reaction save in added time from Henry's goalmouth stab to preserve a win that put Atletico back into the Champions League hunt with 39 points.

It was the second straight defeat for Barcelona, which is without a win in four games, but which still tops the table with 60 points.

Madrid, which beat Espanyol on Saturday for its 10th straight victory, has 56, Sevilla is third with 47 and Villarreal has 41.

Elsewhere, Jonathan Sesma scored early and Raul Albiol's second own-goal in three league games saw Valencia fall 2-1 against Valladolid and fall further out of contention for a Champions League place.

Carlos Marchena headed home in the 74th at the Mestalla stadium.

Juan Rodriguez scored from a sharp angle with 15 minutes to play as Deportivo La Coruna rallied from Thursday's UEFA Cup exit to join Malaga, Atletico and Valencia in fifth with 39 points. Albert Camunas and Adrian Colunga led Recreativo Huelva to a 2-0 win over Malaga, which played with 10 men from the 34th minute when Manuel Ortiz was handed a red card.

The four clubs are only two points behind fourth-placed Villarreal, which occupies the final Champions League spot and which will attempt to consolidate its position against lowly Real Betis later Sunday.

In Sunday's other 25th-round results, it was: Almeria 2, Getafe 1; Racing Santander 1, Osasuna 1; and Sporting Gijon 0, Mallorca 1.

Almeria's Alvaro Negredo scored goals in each half to take his season tally to 15 — two better than all of last year.

At El Sardinero stadium, Santander took an early lead through Oscar Serrano's rising shot from the left before Walter Pandiani drew the visitors level right at the end of the first half with a well-placed header.

Mallorca moved ahead of Osasuna and out of the relegation zone after midfielder Juan Arango struck a free kick over the defensive wall and into the top corner six minutes into the second half.

Mallorca is two points clear of 18th-placed Osasuna, which remains in the relegation zone with 25 points despite being unbeaten in six games. Espanyol and Numancia occupy the two other relegation spots with 21 and 20 points, respectively.

On Saturday, Sevilla beat Athletic Bilbao 2-1.