Barcelona put one foot in the Champions League knockout stages with a huge 2-1 victory over Porto on Tuesday.
Knowing defeat would give them plenty of work to do on the final day, Barcelona fell behind to Pepe's first-half strike but immediately tied things up through the impressive Joao Cancelo, who lit a fire under his side.
After an even first half, Barcelona dominated the second and deservedly sealed all three points when Joao Felix tapped home to steer Xavi's side to the top of Group H.
How the game unfolded
Raphinha stung the gloves of Diogo Costa inside eight minutes, with Barcelona dominating possession and looking lively in attack, although Porto proved to be a threat on the counter in an exciting opening first 25 minutes.
Mehdi Taremi thought he had opened the scoring with a delicious back-heel midway through the half but the offside flag was quickly raised and a swift VAR check confirmed the on-field decision.
Clearly spurred on, Porto started to create more as Galeno forced two smart saves from Inaki Pena, but Barcelona did not heed the warnings as winger Pepe drilled home from close range to put the visitors ahead.
Fortunately, Cancelo's response was nearly immediate. The full-back, playing on the left here, cut inside and sent a curling effort soaring into the bottom corner to tie the score up shortly after the half-hour mark.
Felix crashed over the bar soon after - a sign of the scoring form that had deserted him of late - before Raphinha crashed wide after a poor clearance from Costa nearly handed Barcelona the go-ahead goal.
It was Porto who would have the final chance of the half. Alan Varela sent an effort curling towards the far post but a smart stop from Pena kept the two sides level at the interval.
Felix crashed against the crossbar within seconds of the restart, but he finally grabbed his goal ten minutes later as he tapped home Cancelo's cut-back to put his side ahead - a lead which was thoroughly deserved after Barcelona stepped things up in the second 45.
The pressure remained on throughout the second half, with Porto struggling to get anything going. Although there were no more goals, Barcelona strolled to what turned out to be a comfortable victory.
Barcelona player ratings (4-3-3)
GK: Inaki Pena - 7/10 - Plenty of really nice saves to stop Porto adding a handful of goals even before half-time.
RB: Ronald Araujo - 6/10 - A mixed showing at right-back. Won some of his duels but lost a handful of others. Feels a bit wasted out in this full-back spot.
CB: Jules Kounde - 5/10 - Seemed a little nervy in possession. Questions will be asked over his fit at centre-back, particularly with Araujo biting the bullet and playing out wide.
CB: Inigo Martinez - 6/10 - A tricky one to rate. Martinez had some excellent moments and yet still felt like you couldn't really trust him, making a handful of nervy decisions to invite pressure.
LB: Joao Cancelo - 8/10 - Porto couldn't live with Cancelo down the left. His runs forward caused countless problems and he took his goal with real quality.
DM: Ilkay Gundogan - 5/10 - The game passed him by in this deeper role, which clearly doesn't work to Gundogan's strengths.
CM: Frenkie de Jong - 7/10 - Some glorious moments on the ball. Not a permanent threat but when he did get going, the Dutchman was near-impossible to stop.
CM: Pedri - 7/10 - Pulled the strings in midfield alongside De Jong, linking up well with those around him to keep Barcelona moving forwards.
RW: Raphinha - 6/10 - A lively threat down the right but one which rarely provided any real sense of danger. Some great drives into the box followed by a some poor decisions.
ST: Robert Lewandowski - 5/10 - A quiet performance from Lewandowski as Barcelona's attack was focused down the wings instead.
LW: Joao Felix - 7/10 - Got himself into so many nice positions and, after missing a handful of chances, really came to life in the second half. A smart finish to put Barcelona ahead.
Substitutes
SUB: Ferran Torres (75' for Felix) - 6/10
SUB: Alejandro Balde (82' for Cancelo) - N/A
SUB: Lamine Yamal (90' for Raphinha) - N/A
Subs not used: Diego Kochen (GK), Ander Astralaga (GK), Sergi Roberto, Marcos Alonso, Andreas Christensen, Oriol Romeu, Marc Casado, Fermin Lopez
Manager
Xavi - 7/10 - Made the required tweaks at half-time to put his side in control of this one, although he may have to face questions over his use of the likes of Araujo, Kounde and Gundogan.
Player of the match: Joao Cancelo (Barcelona)
This article was originally published on 90min as Barcelona 2-1 Porto: Player ratings as Cancelo & Felix inspire comeback victory.