Lionel Messi scored a hat-trick as Barcelona routed Tenerife 5-0 to maintain its two-point advantage in the Spanish league after closest rival Real Madrid also won, beating Mallorca 2-0 thanks to goals from Gonzalo Higuain and Esteban Granero.
Alejandro Alfaro had three good chances to put the hosts ahead but the Tenerife striker hit the crossbar on the first occasion and goalkeeper Victor Valdes foiled his other two efforts from inside the area.
Those missed chances proved costly as Messi scored the opener in the 36th minute after receiving the ball from Bojan Krkic inside the area.
The world player of the year then turned provider, as it was his free kick from the right that Carles Puyol headed home in the 44th and, a minute later, Andres Iniesta broke out of the midfield, spotted Krkic down the left side and the teenage striker again set up Messi for an easy tap in.
The Argentina international joined Valencia’s David Villa as the league’s joint leading scorer with his 12th goal of the season to complete his hat-trick in the 75th after curling a left-footed shot from outside the area over goalkeeper Sergio Aragoneses into the top corner.
Ezequiel Luna completed the rout with an own-goal in the 85th.
In contrast to the balmy weather at Tenerife’s Heliodro Rodriguez Lopo stadium, Higuain helped Madrid keep the pressure on Barcelona with a victory in steady snowfall in the Spanish capital.
The Argentina striker darted in from the right and across the edge of the area before curling a left-footed shot around goalkeeper Dudu Aouate into the top corner for his 11th goal of the season.
Higuain then slipped past his defender in the 50th and crossed to Granero who volleyed past Aouate from close range.
Elsewhere, Valencia beat Xerez 3-1 to stay third, while Deportivo La Coruna was a 1-0 winner over Osasuna.
Barcelona leads the table with 43 points, Madrid has 41, Valencia 35, Deportivo 31 while Sevilla and Mallorca are both on 30. Madrid welcomed Kaka back from injury in a high-tempo game played in blustery conditions at the Santiago Bernabeu.
“It was a complicated game not only for the weather conditions but for team changes, like the additions of (Fernando) Gago and Kaka, who had a great game against a very motivated rival,” Madrid coach Manuel Pellegrini said. “We played a very complete game.”
Jose Maria “Guti” Gutierrez returned for the first time since October, replacing Xabi Alonso in the 84th after the Madrid midfielder limped off. Alonso and Rafael Van der Vaart, who came off for Granero in the 21st to a calf injury, will undergo medical scans on their injuries.
A minute’s silence was observed for the three people who died during an armed attack on the Togo team bus at the Africa Cup on Friday.
At the Chapin Stadium in Xerez, Juanma Mata put Valencia ahead after 11 minutes before Carlos Calvo equalized for Xerez in the 25th from a counterattack.
Valencia regained the lead in the 33rd as David Villa drew the defence before crossing to David Silva, who looped a left-footed shot over Soares.
Carlos Marchena sealed the win in the 69th as the burly defender burst into the box and fired a dipping shot over Soares.
“In any other season, with this amount of points, we could have been leading or close to it,” Valencia coach Unai Emery said after his side left Xerez rooted to the bottom of the table after its sixth straight defeat.
Deportivo maintained its bid to qualify for European competition next season as Juan Rodriguez scored the only goal of the game against Osasuna in the 50th, swiveling to meet Andres Guardado’s centre.
Osasuna was reduced to 10 men from the 67th when midfielder Javad Nekounam was red carded.
Fernando Llorente scored a 79th-minute penalty to rally Athletic Bilbao to a 1-1 draw at Malaga, which went ahead from Welington’s 48th-minute header.
Diego Castro’s 39th-minute goal saw Sporting snap a four-game winless run with a 1-0 win over Getafe, whose three-game winning streak ended.
Fernando Marques jumped on a loose rebound in the 71st to score the winner in Espanyol’s 2-1 victory over Zaragoza. Joan Verdu took advantage of a goalkeeping error to put the hosts ahead in the 13th before Javier Arizmendi equalised for Zaragoza, which stayed second bottom, in the 40th.