Lionel Messi might have powered Barcelona to this season's Spanish league crown, but it fell to humble crosstown rival Espanyol to finally finish off Real Madrid's title defence with a 1-1 draw on Saturday.
So after 10 months of competition, Barcelona's 22nd league title and fourth in five years wasn't decided at Camp Nou, but rather a few miles away at Cornella-El Prat Stadium.
Madrid had staved off Barcelona's title celebration by winning its last three games, but the titleholders failed to delay it any longer.
"I have to congratulate Barcelona, its coaches, players, board, and fans," said Madrid coach Jose Mourinho. "It just won a league that was ours until today, and the least we can do is to congratulate them."
Espanyol's Cristian Stuani opened the scoring in the 23rd minute. Gonzalo Higuain levelled in the 58th, but Madrid couldn't find the winner even with Cristiano Ronaldo going on to help.
Barcelona sealed the league with a seven-point lead and four games to go, and with Madrid having only six more points in play.
"The best gift, turning 29 and winning the league... the prize for the work of the entire year," Barcelona midfielder Andres Iniesta, who turned 29 on Saturday, wrote on Twitter.
Crowds immediately gathered in Barcelona's city centre to toast the trophy, and the club announced on its website that it would hold a parade on Monday to celebrate its latest piece of silverware, and its only one of the season.
But Barcelona still has something to play for in its remaining four games, starting with a trip to third-place Atletico Madrid on Sunday: winning would mean it matches Madrid's claim to the best campaign ever from last season when it hauled in a record 100 points.
"Our first objective is to win the league," said Barcelona coach Tito Vilanova. "Reaching 100 points isn't a title, but now that we don't have games midweek we can play each one in better shape. If we can go for it we will try to do so."
Madrid's game at Espanyol was a microcosm of its season: too little, and too late. Madrid stumbled at the start of the league campaign and then when it started to reel off wins, Barcelona was too far ahead.
Espanyol finished with 10 men after Victor Sanchez was shown a red card for a low tackle on Higuain with Madrid looking for a second goal.
Mourinho, who appears near to a return to England this summer, left Ronaldo on the bench until the 57th with his team set to play the final of the Copa del Rey on Friday against Atletico. After bowing out of the Champions League semifinals, it is Madrid's only hope for silverware this season.
"Barcelona is the rightful champion," said Madrid midfielder Xabi Alonso. "The league is won by the most consistent team, and we had a bad start to the season that didn't let us compete until the end.
"Our goal is [now] the Copa."
Madrid didn't threaten the hosts' area in the first half, and Espanyol struck with its first goal against the powerhouse in four games at its Cornella-El Prat Stadium. Stuani scooped the ball into the net from a pass by Sergio Garcia after Madrid failed to defend a corner.
Stuani almost added a second goal five minutes later when Joan Verdu played him clear, but Madrid goalkeeper Diego Lopez bettered him one-on-one.
Espanyol kept pressing and it appeared Hector Moreno scored with a header from another corner, but the referee waved it off after ruling that he fouled Alonso, who had gone on to replace the injured Raphael Varane.
Mourinho said Varane had an injury of "some seriousness" to his right knee but that more tests were needed.
With his team showing no signs of coming back, Mourinho sent on Karim Benzema for Alvaro Morata at the start of the second half. He also ordered Ronaldo to start warming up and soon threw him into the mix in place of a lacklustre Kaka.
But it fell to Higuain to equalize with a glancing header to send Luka Modric's free kick under goalkeeper Kiko Casilla and take his personal tally against Espanyol to 10 goals.
Madrid pushed Espanyol back into its area, but it came no closer than two free kicks by Ronaldo that sailed well high.
Also, Athletic Bilbao beat Mallorca 2-1, leaving the Balearic Islands club in last place and four points from safety, while Deportivo La Coruna also stayed in the relegation zone after losing 1-0 at Valladolid.
Osasuna edged out Getafe 1-0 to end a five-game winless streak and move four points clear of the drop.