Real Madrid won their first La Liga title since 2012 thanks to a final-day victory at Malaga.
Cristiano Ronaldo scored early on to settle the nerves, latching onto Isco’s through ball to step around Carlos Kameni and tap into an empty net.
Karim Benzema added their second goal after the break after Kameni parried Sergio Ramos’ shot.
Real, who had only needed a point, now face Juventus in the Champions League final looking to complete a double.
Barcelona, who had won the past two titles, came from 2-0 down to beat Eibar 4-2 but they had needed Real to slip up if they were going to retain the trophy.
The result means Zinedine Zidane, in his first full season as Real boss, is the first manager to lead Madrid to the Spanish league title since Jose Mourinho five years ago.
If Real beat Juventus in Cardiff, they will become the first team to successfully defend the Champions League – with Zidane having won the tournament six months into the job last summer.