Raphinha scored the game-winning goal for Barcelona as the Blaugrana rallied from Robert Lewandowski’s first-half expulsion to go five points ahead at the top of LaLiga.
On Tuesday, Barcelona went down to David Garcia’s early header and were reduced to 10 men when Lewandowski was booked for a dangerous tackle on the striker.
Unused replacement Gerard Pique’s Blaugrana career came to an end with a whimper when he was also sent off for berating the officials at halftime, but Xavi’s side came back in the second half, first via Pedri.
Despite Osasuna looking the more likely victors late on, Raphinha came off the bench to nod in five minutes from time, snatching a crucial victory in Barca’s final game before the World Cup.
Osasuna led after just six minutes, although their opener came in controversial fashion as David Garcia headed in a right-wing corner after Marcos Alonso appeared to have been fouled.
Things went from bad to worse for the Blaugrana after 31 minutes, as Lewandowski – having been booked for an early foul on Nacho Vidal – received his marching orders after leaping into an aerial duel with his forearm raised, leaving David Garcia on the ground.
Barca were denied a leveller by the offside flag when Ferran Torres converted Jordi Alba’s cross and suffered another blow when Pique was shown a red card following an animated discussion with the officials at the break.
However, the Blaugrana equalised three minutes after the restart, with Pedri slotting into the bottom-left corner after Osasuna failed to clear another Alba delivery.
Osasuna went close to a winner of their own through Kike Garcia’s backheel, but they suffered late heartache when Raphinha nodded Frenkie de Jong’s searching pass beyond Aitor Fernandez for a precious win.
What does it mean? Barca stay top of the tree for Christmas
The unique nature of this season meant Barcelona approached the match knowing victory would see them top LaLiga at Christmas, leaving rivals Real Madrid unable to overhaul them at the summit before the World Cup break.
Barca faced plenty of adversity at El Sadar but showed they possess the fight required for a title scrap as they moved onto 37 points for the season. That is tied for the third-highest tally they have amassed across their first 14 games of a campaign in LaLiga, having racked up 40 points in both 2012-13 and 2013-14 (also 37 in 2010-11).