Barcelona cruised to a 2-0 win away to deadly rivals Real Madrid and are now three points clear of the whites at the top of the Spanish Liga with seven matches left.

Their impressive win in the Estadio Bernabeu — with goals from Lionel Messi and Pedro — leaves them with 80 points from 31 games and the league title within sight.

It was Barca’s fourth straight “Clasico” defeat of Real, and the first time ever that they have managed to win in the Bernabeu in consecutive seasons.

They have triumphed four times in Real’s stadium in the past six years.

Pep Guardiola’s world champions were not as sublime as in last season’s 6-2 humiliation, but they were far superior and always looked in control.

Barca should really have won by a greater margin, but Real keeper Iker Casillas twice prevented Messi from making it 3-0 towards the end.

Messi said that “we have shown tonight that we are superior to any other team, when we work well together.”

Real general director Jorge Valdano congratulated Barcelona “for playing really well tonight,” but insisted that “the battle (for the league title) is not yet over at all.”

It was the first time that Real had dropped points at home, and ends their defiant run of 12 straight wins.

The sell-out match was preceded by a minute’s silence for the president of Poland, Lech Kaczynski, who died in an airplane crash that killed 96 people in Russia early on Saturday.

Both teams wore black armbands in his honour.

Guardiola raised eyebrows by starting the match with Carles Puyol at right-back and Dani Alves further forward down the right, an experiment that he abandoned at half-time.

Barca dominated possession from the start, as expected, with Real content to look for Cristiano Ronaldo and Gonzalo Higuain on the break.

The first goal came after 33 minutes of tense stalemate. Messi played a perfect one-two with Xavi, flicked the bouncing ball around defender Raul Albiol and scored with a right-foot shot.

All that Real could manage in the first half was a high drive from Higuain.

The hosts looked more determined after the break, and Barca keeper Victor Valdes had to save shots from Marcelo, Cristiano, Guti and Fernando Gago.

The contest effectively finished in the 56th minute, when Pedro made it 2-0 with a calm left-foot shot after taking another classy pass from man-of-the-match Xavi and speeding away from Alvaro Arbeloa.

Rafael Van der Vaart then squandered Real’s best chance, and the writing was on the wall for the hosts.

At the other end, Messi was twice foiled by Casillas.

Real continued to come forward, but more in hope than expectation.

Veteran striker Raul had a “goal” disallowed for handball by fellow sub Karim Benzema.

More In: Football | Sport