Barcelona were crowned La Liga champions for the 24th time after a Luis Suarez hat trick saw them to a 3-0 win at Granada on Saturday.
Barca had gone into their final game of the season with a one-point advantage over second-place Real Madrid and made no mistake at Los Carmenes, claiming victory for a fifth successive game to end the La Liga season.
Barca were not made to pay for their mini-slump in April -- which brought three Primera Division defeats in a row -- as they secured a second straight title and a sixth in eight years.
Suarez scored his first goal on 22 minutes with a tap-in from close range from Jordi Alba's cross, and headed in a second before the break from Dani Alves' cross.
CHAMPIONS!!! #CampionsFCB #fcblive pic.twitter.com/ontggmXuy7
- FC Barcelona (@FCBarcelona) May 14, 2016
The Uruguay star wrapped up a successful afternoon with his 40th La Liga goal of the season after good work from Neymar.
The hat trick allowed Suarez to win his personal battle with Real Madrid's Cristiano Ronaldo in the race to clinch the Pichichi as the league's top scorer.
Speaking after the full-time whistle, Barcelona midfielder Andres Iniesta said: "We have suffered until the end, but it is glorious, to win six league titles in eight years with the same style."
Real Madrid beat Deportivo La Coruna 2-0 to secure a 12th successive La Liga win but had to settle for second place.
Manager Zinedine Zidane's Real side went ahead on seven minutes when Ronaldo slotted home at the far post, and the Portugal forward made the advantage 2-0 with a header midway through the half.
Ronaldo, who hit the woodwork twice before the break, took his tally for 2015-16 to 51 goals in all competitions, which means he has scored a half-century of goals in six successive seasons.
He left the game at half-time after picking up a knock but has two weeks to recover as Real now turn their focus to the Champions League final, a meeting with neighbours Atletico Madrid on May 28.
Real Madrid won 17 of their last 20 league games after Zidane took over for Rafa Benitez in January but ultimately finished one victory short of the title.
Athletic Bilbao defeated 10-man Sevilla 3-1 to move into fifth place and secure a spot in the Europa Leauge group stage next season.
Aritz Aduriz's first-half brace had Athletic in control before Sevilla's Coke was sent off from the bench in the 34th minute.
Though Juan Munoz pulled a goal back, the visitors lost another man three minutes later as Thimothee Kolodziejczak was sent off, and Raul Garcia wrapped up the scoring for Athletic.
Sevilla finished seventh, but they can still qualify for the Champions League next season if they beat Liverpool in the Europa League final on Wednesday.
If Sevilla lose to Liverpool but beat Barcelona in the Copa del Rey final on May 22, they will enter next year's Europa League in the group stage, but if they drop both finals they will have to endure two qualifying rounds.
Third-place Atletico Madrid finished their league campaign with a 2-0 win over Celta Vigo.
Fernando Torres and Antoine Griezmann each scored early in the second half for Atletico, whose own title run ended last week in a surprise defeat at Levante.
Torres' angled volley put Atletico on their way to victory in the 51st minute after a stale first half and then Griezmann followed up another acrobatic effort from Torres that had hit the bar.
Celta dropped to sixth place, which will be good enough for the Europa League group stage only if Sevilla lose both of their finals, or the third qualifying round otherwise.