Cristiano Ronaldo and Karim Benzema got the goals as Real Madrid eased to a 2-0 win at Malaga, securing their first La Liga title in five years on the final day of the season.
Going to a team that had won six of their last eight games was never going to be easy for Real, who were made to work hard for the win, but never looked in doubt of securing it after Ronaldo opened the scoring in the opening minutes.
Title decided despite Barcelona win
Benzema added a second after the interval to seal three points when his side needed just one, adding another trophy to Zinedine Zidane's impressive haul at the Bernabeu as a player and manager, with another on the cards in a couple of weeks as they face Juventus in the Champions League final.
Madrid took the title away from Barcelona, who finished three points short after beating Eibar 4-2 at the Camp Nou.
It was always unlikely that Luis Enrique was going to end his tenure with another title as Madrid went into the last day heavy favourites, and things were looking even more bleak as a Takashi Inui brace fired the visitors into a shock 2-0 lead.
However, an own goal followed by a Luis Suarez equaliser and Lionel Messi penalty swung the game back in Barca's favour before the Argentine added another in stoppage time.
Torres plays part in Europa League twist
Elsewhere in the league, Fernando Torres scored twice as Atletico Madrid ended their time at the Calderon by beating Athletic Bilbao 3-1.
That result dumped Bilbao out of the Europa League places, Villarreal and Real Sociedad snatching fifth and sixth respectively.
Sociedad did so in dramatic style, scoring in the 93rd minute to tie 2-2 at Celta Vigo, edging above Athletic by a point.