With 2-0 away win against a Juventus side deprived of Cristiano Ronaldo, Barcelona bounced back from their weekend defeat in the Clasico against Real Madrid and shut out the boardroom crisis which led to president Josep Maria Bartomeu resigning.
Marcus Rashford was again the star for Manchester United in the Champions League with a hat-trick in a 5-0 thumping of RB Leipzig as Barcelona put their off-field troubles to one side to win 2-0 away to a Juventus side deprived of Cristiano Ronaldo.
Rashford's late goal earned United a 2-1 victory away to Paris Saint-Germain last week and at Old Trafford the England striker came on as a second-half substitute and scored three times from the 74th minute on in what was a fine win against last season's semi-finalists.
Paul Pogba released Mason Greenwood to open the scoring in the first half, before the youngster made way for Rashford after the break and Ole Gunnar Solskjaer's side ran away with the game to make it two wins from two in Group H.
Anthony Martial also netted from the penalty spot as United ruthlessly exposed the side who currently top the German Bundesliga and went clear at the top of the section.
"We looked dangerous throughout and that we could score every time we went forward," said Rashford. "It was a real team performance."
Meanwhile PSG got their campaign up and running by beating Istanbul Basaksehir 2-0 in Turkey, although they lost Neymar to an adductor injury in the first half.
Both PSG's goals were scored in the second half by Moise Kean, the on-loan Everton striker heading in Kylian Mbappe's corner in the 64th minute and then turning to fire in the second late on.
Barca bounce back
In Italy Barcelona bounced back from their weekend defeat in the Clasico against Real Madrid and shut out the boardroom crisis which led to president Josep Maria Bartomeu resigning on Tuesday.
Ronald Koeman's side had luck on their side as they took the lead through a deflected Ousmane Dembele strike and then saw Alvaro Morata have three goals disallowed for offside for the hosts.
The absence of Ronaldo because of a positive coronavirus test meant no chance to see him renew his on-field rivalry with Lionel Messi, but the Argentine got his name on the scoresheet late on, netting a stoppage-time penalty to seal Barca's second victory in as many Group G outings.
"This was our best game all season," said Koeman.
"The team reacted well, despite the resignation of the president. We were focused on the football because all the other stuff is not our responsibility."
Juve had Turkish defender Merih Demirel sent off late on as their underwhelming start to the season under novice coach Andrea Pirlo continued.
Their next game is away at Ferencvaros, who came from behind to draw 2-2 with 10-man Dynamo Kiev in Budapest.
Ziyech impresses, Haaland on target
Viktor Tsygankov's penalty and a Carlos de Pena effort had the Ukrainians in control but they then had captain Sergiy Sydorchuk sent off and the hosts -- with a sizeable crowd behind them -- took full advantage.
Tokmac Nguen pulled one back and Ivorian Franck Boli scrambled in a stoppage-time leveller for the Hungarians.
In Group E Chelsea were comprehensive 4-0 winners away to Krasnodar in Russia, with Jorginho missing a penalty before Callum Hudson-Odoi opened the scoring.
Timo Werner smashed in a spot-kick on 76 minutes to double Chelsea's lead, with Hakim Ziyech and Christian Pulisic adding late goals.
For Ziyech it was a first Chelsea goal on his first start since signing from Ajax for £37 million ($48 million).
"We brought him in to do a job, maybe people have forgotten a bit because we signed him in January and he missed the start of the season, but tonight he showed he is here," said Chelsea boss Frank Lampard of Ziyech, who has struggled with injury.
Sevilla beat Rennes 1-0 in the same section with Luuk de Jong scoring the only goal.
Borussia Dortmund claimed their first points in Group F with Jadon Sancho's 78th-minute penalty and Erling Braut Haaland's stoppage-time strike securing a 2-0 win over Zenit Saint-Petersburg.
The Germans are a point behind Lazio and Club Brugge, who drew 1-1 in Belgium with a Hans Vanaken penalty securing a draw for the hosts.
Lazio had travelled without a host of players due to coronavirus, including star striker Ciro Immobile, but had gone in front early on through Joaquin Correa.