Barcelona's bid to wrap up the Primera Liga title was held up after a draw at Athletic Bilbao as Real Madrid got the better of city rivals Atletico.
Barcelona will have to wait a little longer to get their hands on the trophy after a last-minute strike from Ander Herrera saw them held to a 2-2 draw by Athletic Bilbao.
Bilbao took a deserved lead after 27 minutes through Markel Susaeta, who met a ball into the box from Aritz Aduriz before sweeping home from close range.
Tito Vilanova introduced Lionel Messi on the hour mark and it was the Argentinian who levelled the scores after 67 minutes, latching on to a pass from Thiago before dribbling past three defenders and smashing the ball into the bottom left corner from just inside the area.
Messi was pivotal in Barcelona's second goal as well, which arrived just three minutes later, when he headed Dani Alves' cross to Alexis Sanchez who finished from a few yards out.
However, there was one final twist, when Herrera snatched an unlikely - but deserved - point by rolling the ball into the net following Susaeta's headed assist.
Real Madrid came from behind to beat local rivals Atletico 2-1 and maintain their dominance over their city foes in the 21st century.
Atletico were ahead inside four minutes when Gabi went for goal from a free-kick and caught out Diego Lopez, who could only palm his shot out to Diego Godin, who put the ball back across goal and Radamel Falcao headed home from inside the six-yard box.
Real had little response but equalised out of nothing on 12 minutes when Angel Di Maria won a free-kick in a similar area to the one Atleti scored from and went for goal, the ball taking a deflection off Juanfran's hip, which sent it beyond the helpless Thibaut Courtois.
Raul Garcia struck the bar just after half-time, before Real struck decisively midway through the second half when Karim Benzema found Di Maria in space down the left wing and the Argentinian cut inside before shooting into the bottom far corner, beyond the reach of Courtois.
Celta Vigo temporarily moved out of the Primera Division relegation zone after a solitary Augusto Fernandez goal helped them to a vital win away to Levante.
The Argentinian headed home midway through the first half before Jose Javier Barkero missed a second-half penalty for Levante.
Real Zaragoza climbed off the foot of the Primera Division table with a dramatic late 3-2 win over fellow strugglers Real Mallorca.
Tomer Hemed's early opener for Mallorca was overturned by goals from Paco Montanes and Helder Postiga, but the Balearic islanders looked to have nicked a point when Javier Arizmendi scored seven minutes from time.
However, in a thrilling finale, Ruben Rochina fired Zaragoza back in front before Arizmendi had a second 'goal' ruled out for offside.