Atletico Madrid ground out a 1-1 draw at the Nou Camp to claim their first Primera Division title since 1996.
It was not always pretty, but Diego Godin's headed equaliser early in the second half was enough to deny Barcelona in a tense title decider.
The hosts had taken the lead with a stunning strike from Alexis Sanchez but it was a rare sight of goal for the hosts, with Lionel Messi cutting a frustrated figure and Atletico's defence standing firm.
Gerardo Martino sprung a surprise in his team selection with Barca's most decorated player Xavi Hernandez left out as Cesc Fabregas and Sergio Busquets started alongside Andres Iniesta, while Pedro Rodriguez was preferred to record signing Neymar.
Atletico started with former Barca man David Villa alongside Diego Costa, with Raul Garcia among the substitutes.
Tension was high from the start with Atleti making a bright start and Gerard Pique earning an early yellow card for fouling Koke.
Barca were having most of the ball but could not find a way to test Thibaut Courtois while Atletico's breaks looked dangerous as Jose Pinto was hesitant in goal.
Atletico's hopes suffered a huge blow in the 14th minute when Costa pulled up with a recurrence of his hamstring injury, leaving the pitch in tears with his chances of playing in the Champions League final in the balance.
It got even worse moments after when Arda Turan followed him off after taking a blow from Fabregas, and the wind was in Barca sails as Pedro headed a good chance over.
Alexis' wonder-strike put them ahead in the 34th minute, with the Chilean rifling a shot into the roof of the net from an acute angle before Courtois had a chance to move.
Atletico were in danger of losing their cool in the moments after as Godin and Tiago collected yellow cards in quick succession but they hung on until half-time without suffering further damage.
Diego Simeone worked some kind of magic in the dressing room and his side started the second half on fire, with Villa striking the post 45 seconds after the restart before Godin headed them level in the 48th minute, rising highest to power a header into the bottom corner of the goal.
Injuries then began to strike at Barca, with Busquets forced off. Alex Song was the man to replace him as Xavi remained on his seat, and a second substitution soon after saw Neymar replace the ineffective Pedro.
Messi hammered the ball into the roof of the net in the 64th minute but from a clearly offside position.
The Argentinian had another chance from a free-kick soon after following a wild swipe from Filipe Luis but blasted it into the wall.
Xavi came on to replace Fabregas with 12 minutes to go as Barca went into all-out attack mode, and Courtois palmed over a powerful Alexis strike as the game moved into the final 10 minutes.
Pinto did not seem to know much about his 83rd minute save from an Atletico corner but Barca survived, and the breathless action continued as Pique was demanding a penalty in vain after being eased over by Godin.
The tension levels rose but Barca could not find a way past the dogged Atletico defence, who huffed and puffed but never lost their heads as they played the ball out of trouble to frustrate their hosts.
Pinto raced up for a stoppage-time corner, but Atletico pumped the ball clear and seconds later their celebrations could begin.
Barcelona's fans stuck around to applaud, a fitting end to a pulsating title race.