Gareth Bale, starting a game for the first time since November, was on target as Real Madrid staged a late fightback to beat Villarreal 3-2 at El Madrigal after being 2-0 down, with all the goals coming in a hectic second half.

The victory took Real back to the top of La Liga, a point ahead of Barcelona who had moved above them briefly on Sunday afternoon after a 2-1 win over Atlético Madrid at the Estadio Vicente Calderón.

The substitute Alvaro Morata scored Real’s winner in the 83rd minute to complete a 19-minute turnaround that keeps Zinedine Zidane’s side on course to win the title for the first time since 2012.

Lionel Messi seals win for Barcelona with late goal against Atlético Madrid Read more

Villarreal’s Manu Trigueros had scored from inside the area to put the home side in front five minutes after half-time and Cedric Bakambu doubled the lead in the 57th with a fine finish past Keylor Navas, though he was fortunate not to be ruled offside.

Real looked destined for a second defeat in a week on Spain’s east coast after they lost 2-1 to Valencia at Mestalla on Wednesday but Bale, who had made two appearances as a substitute after returning following an ankle injury, pulled a goal back in the 64th minute with a header before Cristiano Ronaldo equalised from the penalty spot 10 minutes later after Bruno Soriano was adjudged to have handled.

Morata then headed Marcelo’s cross under Villarreal’s substitute goalkeeper Andrés Fernández, who had replaced Sergio Asenjo when he sustained a muscle injury in making a stunning save to deny Karim Benzema.