Alassane Plea scored a Champions League hat-trick as Borussia Monchengladbach powered their way to the top of Group B with a 6-0 romp at Shakhtar Donetsk.
The visitors, who had drawn their first two games against Inter Milan and Real Madrid 2-2, were 4-0 up at the break courtesy of Plea's double, which came either side of Valeriy Bondar's 17th-minute own goal and Remy Bensebaini's close-range finish.
Shakhtar fared little better after the restart with Lars Stindl making it 5-0 before Plea completed his treble to seal the German club's biggest win in the competition.
Real Madrid needed a late winner from teenager Rodrygo to get the better of Inter Milan in a five-goal thriller at the Estadio Alfredo Di Stefano.
Karim Benzema fired them ahead with 25 minutes gone after intercepting Achraf Hakimi's back-pass and Sergio Ramos extended their lead with a 33rd-minute header.
Inter were back in it within two minutes through Lautaro Martinez, who then set up Ivan Perisic to make it 2-2 with 22 minutes left, but there was drama at the death when substitutes Vinicius Junior and Rodrygo combined for the 19-year-old to snatch victory.
Liverpool's Diogo Jota was another to help himself to a hat-trick as Atalanta found themselves on the wrong end of a five-goal blitz in Bergamo.
The Portugal international, preferred in the starting line-up to Roberto Firmino, fully justified his selection with a deft 16th-minute finish from Trent Alexander-Arnold's astute through ball and an equally accomplished control and decisive shot from Joe Gomez's ball over the top 12 minutes before the break.
Mohamed Salah and Sadio Mane both produced expert finishes inside the opening four minutes of the second half to make it 4-0 before £40million summer signing Jota claimed his third as the Reds maintained their perfect start in Group D.
Dusan Tadic was Ajax's matchwinner in an explosive start to their 2-1 success at Midtjylland.
Antony's first goal in the competition and a second from Tadic had the Dutchmen 2-0 up within 13 minutes and although Anders Dreyer reduced the deficit within five minutes, that was as good as it got for the pointless Danes.
In Group A, holders Bayern Munich scored four times in the final 11 minutes to secure a 6-2 victory over Red Bull Salzburg in Austria.
Mergim Berisha's fourth-minute opener for the home side simply sparked the holders into action, with Robert Lewandowski levelling from the penalty spot before defender Rasmus Kristensen diverted Thomas Muller's cross into his own net.
Substitute Masaya Okugawa's 66th-minute equaliser left Bayern with more work to do and they responded in fine style with goals from Jerome Boateng, substitute Leroy Sane, Lewandowski and Lucas Hernandez inside the final 11 minutes.
They sit five points clear of second-placed Atletico Madrid after Anton Miranchuk's penalty secured a 1-1 draw for Lokomotiv Moscow.
Jose Gimenez headed Atletico into an 18th-minute lead, but the visitors were pegged back within seven minutes when, after a VAR review, Hector Herrera was adjudged to have handled in the area and Miranchuk levelled from the spot.
Manchester City left it late to seal a 3-0 home win over Olympiakos and extend their 100 per cent start to Group C.
Ferran Torres got City off to the perfect start when he made the most of Kevin De Bruyne's inviting pass to give them a 12th-minute lead, but they had to wait until the closing stages for substitutes Gabriel Jesus and Joao Cancelo to cement the win.
Moussa Marega's fourth-minute strike set Porto on the road to victory against over Marseille by the same scoreline.
Marega's effort and Sergio Oliveira's 28th-minute penalty after Jordan Amavi had fouled Jesus Corona gave the Portuguese champions a 2-0 advantage, but they had to wait until 24 minutes into the second half for Luis Diaz to wrap up the points with a third.