Manchester City made a winning start to their 10th attempt at winning the Champions League after fighting back to beat Porto.
The Portuguese champions took a surprise early lead but Sergio Aguero quickly levelled from the spot and second-half goals from Ilkay Gundogan and substitute Ferran Torres gave City victory.
This was not a vintage performance from Pep Guardiola's side, who were sloppy in possession in dangerous positions, especially early on, but they were in full control by the time their opening game in Group C was over.
City had not even managed a shot at goal when they fell behind in the 14th minute after a poor pass by Ruben Dias allowed Matheus Uribe to start a Porto attack.
Uribe found Colombian forward Luis Diaz, who was allowed to cut inside from the left and run virtually unchallenged into the City box before beating Ederson with a low shot.
City were not behind for long, however, with Aguero given the chance to equalise from the spot after Gundogan hit the post and Pepe clumsily took out Raheem Sterling as he chased the rebound.
Porto were unhappy with the decision, claiming Gundogan had stepped on goalkeeper Agustin Marchesin in the build-up, but the penalty stood and Aguero blasted home his 40th Champions League goal.
There were further chances for the visitors before the break, with Kyle Walker having to clear Sergio Oliveira's shot off the line.
But they were much less of a threat in the second half, which was when City began to exert some authority in midfield.
The chances were hardly flowing for Guardiola's men either, but Gundogan showed a touch of class to bend in his free-kick over the wall from the edge of the area and give his side the lead.
By now City were on top and Torres made certain of victory seconds after replacing Aguero, playing a neat one-two with fellow substitute Phil Foden and curling his shot home.