Barcelona made it two wins from two in this season's Champions League as Ferran Torres' goal secured victory at Porto.
The ex-Manchester City forward replaced the injured Robert Lewandowski midway through the first half.
Torres then grabbed what would be the winner just before the break, driving in from Ilkay Gundogan's pass.
Porto battled for an equaliser in the second half and Barcelona had Gavi sent off in the 93rd minute, but held on.
Goalkeeper Marc-André ter Stegen had kept the hosts at bay, keeping out Wendell's strike before parrying Galeno's curled effort.
Barcelona teenager Lamine Yamal continued his impressive breakout season by making more history.
At 16 years and 83 days he became the youngest player to start a Champions League game.
Latest Stories
-
Trump picks Pam Bondi as attorney general after Matt Gaetz withdraws
16 mins -
Providing quality seeds to farmers is first step towards achieving food security in Ghana
27 mins -
‘Restoring forests or ravaging Ghana’s green heritage?’ – Coalition questions Akufo-Addo’s COP 29 claims
2 hours -
Give direct access to Global Health Fund – Civil Society calls allocations
3 hours -
Trudeau plays Santa with seasonal tax break
4 hours -
Prince Harry jokes in tattoo sketch for Invictus
4 hours -
Akufo-Addo commissions 200MW plant to boost economic growth
4 hours -
Smallholder farmers to make use of Ghana Commodity Exchange
4 hours -
I want to focus more on my education – Chidimma Adetshina quits pageantry
5 hours -
Priest replaced after Sabrina Carpenter shoots music video in his church
5 hours -
Duct-taped banana artwork sells for $6.2m in NYC
5 hours -
Arrest warrants issued for Netanyahu, Gallant and Hamas commander over alleged war crimes
5 hours -
Actors Jonathan Majors and Meagan Good are engaged
5 hours -
Expired rice saga: A ‘best before date’ can be extended – Food and Agriculture Engineer
5 hours -
Why I rejected Range Rover gift from a man – Tiwa Savage
5 hours