Falcao continued his sparkling UEFA Europa League form with four second-half goals as FC Porto recovered from a lacklustre start to take a huge step towards the final on 18 May.
Cani's header on half-time was little more than Villarreal CF merited, but that lead was resoundingly obliterated. Falcao did much of the damage, equalising from the penalty spot and then taking his competition tally to 15 this season – equalling Jürgen Klinsmann's record set in the 1995/96 UEFA Cup – after Fredy Guarín had put André Villas-Boas' side in front.
It stretched Porto's winning run to 13 games but for much of the first period it was Villarreal who looked like the side at the top of their game. With Cani, Santi Cazorla and Borja Valero pulling the strings they were all quick feet, feints and foraging: only the final flourish was missing.
Time and again they punched holes in the Porto defence, the gap between Nicolás Otamendi and left-back Alvaro Pereira proving a particular sweet spot. Nilmar should have done better than fire straight at Helton on seven minutes and it took a brilliant block from Rolando, at full stretch, to deny Giuseppe Rossi.
Porto looked to have ridden the storm (and their luck) when Cani struck. Valero danced around a couple of half-hearted challenges on that favoured right flank and fed the lively Nilmar, whose fine near-post cross was expertly glanced in by Cani.
The boisterous home support fell silent: this was not what they had come to see. Before kick-off they unfurled two enormous banners: 'We want Dublin' said one side of the stadium; 'Este é o nosso Destino' (This is our destiny) replied the other. Not if they continued playing as they did in the first half – fortunately for their fans, they did not.
Within four minutes of the restart, Porto, whose one previous shot of note saw Hulk fire a low drive just wide after the half-hour, were level. Guarín prised open the wall of yellow with a pass that allowed Falcao to touch around Diego López and draw the penalty. He made no mistake from the spot.
Twelve minutes later Guarín completed the turnaround, heading in the rebound after his initial left-footed effort had been diverted onto the upright by López. It swiftly went from bad to worse for the visitors as Falcao tapped in Hulk's cross before sealing his third UEFA Europa League hat-trick of the season with a diving header after Guarin's free-kick.
A towering 90th-minute header gave Porto a 5-1 lead to take to El Madrigal next Thursday. Villarreal have a 100% record there in the competition this season, but a four-goal win is surely too much to ask.