FC Barcelona player Messi (C) runs with the soccer in a contest with Osasuna in Madrid, Feb. 11, 2012. FC Barcelona were stunned 3-2 by a dogged Osasuna, leaving Real Madrid the opportunity to extend the lead. [Xinhua/Reuters Photo]
The result means that Real Madrid can open up a ten-point lead at the top of the table if they are able to beat Levante in the Santiago Bernabeu Stadium on Sunday.
Given that Madrid have dropped just eight points all season, that would be an almost impossible mountain for Barcelona to climb with less than half of the season remaining.
Barcelona coach Pep Guardiola produced a major shock in his starting 11 by leaving Xavi Hernandez, Cesc Fabrigas and Andres Iniesta on the bench and starting B-team player Sergi Roberto, who was partnered by Javier Mascherano and Thiago Alcantara in central midfield.
Osasuna got off to a flying start and took the lead from Dejan Lekic who took advantage of some poor defending to beat Victor Valdes with a left foot shot.
Oasuna were clearly highly motivated and Barca were struggling to cope with a difficult semi-frozen playing surface. It was no surprise when Osasuna doubled their lead after 22 minutes.
Lekic was again the scorer, firing home a cross from the right with the Barca defence again missing in action.
Leo Messi had a shot saved by keeper Andres Fernandez shortly afterwards, but Barcelona were clearly not getting to grips with their rivals.
Guardiola reacted at the break bringing wingers Isaac Cuenca and Cristian Tello on for Pedro Rodriguez and Carles Puyol and it looked as if the gamble would pay off when Alexis scored for Barca five minutes into the second half.
However, more poor defending from Barca shortly afterwards allowed Nino to cross for Raul Garcia to net Osasuna's third from close range.
Tello scored his second goal in two weeks with 18 minutes remaining to give Barcelona the hope to level.
Patxi Punal hit the post for Osasuna, before Osasuna keeper Andres Fernandez did well to save from Messi. Alexis had a goal ruled out for offside after Sergi had just touched a Cuenca cross.
Barca poured players forward, but ran out of time against a home side that never stopped working.