A little over two months after their surprise 3-1 defeat to Lyon in the quarter-finals of last season’s tournament, City recovered from Luis Diaz’s early strike to get back in business with goals from Sergio Aguero, Ilkay Gundogan and Ferran Torres.
It was a hard-fought win against a stubborn Porto side who defended doggedly for much of the night but were undone by a penalty and a set-piece before substitute Torres made sure 17 minutes from time.
The German was then felled by Fabio Vieira on the edge of the area, and picked himself up to bend the shot beyond the reach of Agustin Marchesin as City went ahead in the 65th minute.
It was Gundogan’s final contribution before he and Aguero were replaced by Phil Foden and Torres.
The substitutes combined to add a third for City in the 73rd minute, with Foden finding Torres in the area for the Spaniard to lift a quality finish beyond Marchesin.
Riyad Mahrez shot straight at the goalkeeper while Rodri bent a shot against the post when play appeared to stop following an altercation between Pepe and Sterling, but the job was already done for City.