Karim Benzema fired Real Madrid to a first La Liga title in three years as Zinedine Zidane's men claimed the Spanish crown for the 34th time with a 10th successive victory.
Benzema fired the home side into a 29th-minute lead and then converted a second-half penalty to take his tally for the season to 21 and secure a 2-1 win over Villarreal at the Alfredo Di Stefano Stadium.
Victory meant Real were in an unassailable position regardless of what happened elsewhere, but in the event, they did not need it as second-placed Barcelona went down 2-1 at home to Osasuna.
Zidane and his players were left to celebrate at an empty stadium as the Frenchman delivered on his promise to target the league title – just the club’s third in the last decade – on his return in March last year.
Madrid dominated the game, but had to wait until the 29th minute for Benzema to break the deadlock when he ran on to Luka Modric's beautifully-weighted pass and fired past goalkeeper Sergio Asenjo.
He wrapped up the points with a twice-taken spot-kick with 15 minutes remaining after Sergio Ramos had rolled the first attempt into his path only for the strike to be ruled out for encroachment, although substitute Vicente Iborra pulled one back for the visitors late on to spark a frantic conclusion.
Barca needed their arch-rivals to slip up and to beat Osasuna at the Nou Camp to take the race to the final day of the campaign, but neither wish came true.
Jose Arnaiz fired the visitors into a shock 16th-minute lead and although Lionel Messi’s stunning 62nd-minute free-kick restored parity, Roberto Torres’s stoppage-time winner after Enric Gallego had been sent off condemned the reigning champions to defeat.
Second-half goals from Marcos Llorente and Thomas Partey maintained Atletico Madrid’s challenge for third place with a 2-0 win at Getafe, while fourth-placed Sevilla drew 0-0 at Real Sociedad.
At the other end of the table, Miguel Angel Guerrero and Roger Assale scored late goals to clinch a 2-0 win for Leganes at Athletic Bilbao which, coupled with Celta Vigo’s 3-2 home defeat by Levante, takes their survival fight to the final day of the campaign.
However, Real Mallorca’s stay in the top flight is over after they lost 2-1 at home to Granada in ignominious style as Aleksander Sedlar and goalscorer Juan Hernandez were both shown red cards.
Alaves ensured their continued presence among the big boys with a 2-1 win at Real Betis, their first in eight attempts, although winning goalscorer Rodrigo Ely was later sent off as both sides were reduced to 10.
Kevin Gameiro’s goal secured a 1-0 win for Valencia, who had Jaume Costa dismissed in stoppage time, over relegated Espanyol, while Eibar beat Real Valladolid 3-1.
In Italy, Inter Milan climbed back into second place in the Serie A table with a 4-0 win at SPAL, while Torino eased to a 3-0 home victory over Genoa to ease their fears of being dragged into the relegation battle in which the visitors find themselves fully engaged.