(CNN) -- Spanish champions Barcelona extended their league lead to five points after rivals Real Madrid suffered a shock defeat on Saturday night.
Manuel Pellegrini's expensively-assembled Real side lost 1-0 at 10-man Athletic Bilbao, then Barca bounced back from the midweek Copa Del Rey exit at the hands of Sevilla by beating the Andalucians 4-0.
World player of the year Lionel Messi scored twice as he became the youngest Barcelona player to score 100 goals, at the age of just 22.
At San Mames, Bilbao went ahead in just the third minute when Spain striker Fernando Llorente headed in a corner by Fran Yeste, who was sent off last season as Real won the corresponding fixture 5-2.
Joaquin Caparros's side could have already been two goals up, with Carlos Gurpegi smashing a shot against the Real woodwork in the first minute and then Gaizka Toquero hitting the post from the rebound with the goal at his mercy.
But the home team were indebted to goalkeeper Gorka Iraizoz after that, while Karim Benzema hit the post for Real midway through the first half.
Cristiano Ronaldo, the world's most expensive player, shot straight at Iraizoz in the second half when he should have scored, while Brazil playmaker Kaka missed three opportunities to level.
Gurpegi was sent off for a second yellow card deep into time added on, but the Basque side held on to climb to seventh place on 30 points -- 11 behind Real.
Barcelona's hopes of repeating last season's unprecedented hat-trick of trophies were ended during the week by Sevilla, who went through in the Spanish Cup on aggregate despite losing 1-0.
But Josep Guardiola's team never looked like suffering another upset at the Nou Camp, despite needing until four minutes after halftime to break the deadlock when Sevilla defender Julien Escude put through his own net after Gerard Pique flicked on a cross by fellow center-back Rafael Marquez.
Zlatan Ibrahimovic had a header ruled out for offside in the 54th minute, but Barcelona doubled the lead when young winger Pedro -- on as a substitute to replace Thierry Henry -- ran onto Xavi's threaded throughball and lifted a delightful chip over goalkeeper Andres Palop.
Messi then took center stage as he scored his 13th goal this season in the 85th minute from a Daniel Alves cross, reaching the three-figure milestone from just 188 first-team appearances.
The Argentina forward then took the first step towards his second century in the first minute of time added on with a trademark cool finish on the counterattack after France fullback Eric Abidal intercepted a loose pass and found his teammate with a precision ball behind the Sevilla defense.
The result left Sevilla in sixth place on goal difference ahead of Bilbao.
In Saturday's other game, Osasuna moved further away from the relegation zone, leapfrogging fellow strugglers Espanyol in the table with a 2-0 home win as both teams had a player sent off.
Juanfran Torres put the hosts after just six minutes, and former Espanyol striker Walter Pandiani headed a second goal two minutes later.
Osasuna's Ruper received a second yellow card for fouling Fernando Marques five minutes before halftime, then Espanyol's Facundo Roncaglia was unlucky to be dismissed for an innocuous-looking foul on Aranda five minutes after the break.