Arsenal claimed an important victory at Borussia Dortmund, while Barcelona booked their place in the Champions League knockout rounds as they beat AC Milan, and Chelsea took control of their group as they won at home to Schalke.
Aaron Ramsey was the hero for Arsenal as they claimed a 1-0 win at Borussia Dortmund.
Dortmund had the better of the first half but were unable to take their chances, with Neven Subotic steering just wide of the post and Henrikh Mkhitaryan -- the scorer of the opening goal at the Emirates -- also off target when allowed a run on Wojciech Szczesny’s goal.
Dortmund turned up the pressure in the second half, and twice had the ball in the back of the net, but on both occasions were thwarted by the offside flag, and Arsenal made them pay. On 62 minutes, Ramsey headed home from close range with the Gunners’ first shot of the match.
Arsenal might have extended their lead in the immediate aftermath, with Ramsey denied by Roman Weidenfeller and Olivier Giroud then seeing an effort cleared off the line by Nuri Sahin, but Dortmund, and Robert Lewandowski in particular, still presented a threat at the opposite end.
However, the Gunners held firm to see out the match and record a victory that sees them move three points clear of their German hosts.
Napoli, meanwhile, beat Marseille 3-2 with two goals from Gonzalo Higuain as they moved level with Arsenal on nine points at the top of Group F.
Lionel Messi netted a brace to send Barcelona into the second round as they beat AC Milan 3-1 at the Camp Nou.
Barca took the lead when Ignazio Abate was judged to have bundled over Neymar in the area, and Messi powered the penalty past Christian Abbiati to end his three-game goal drought.
They doubled their advantage five minutes before the break when Sergio Busquets was left unmarked to head home from Xavi’s free-kick, but Milan reduced the arrears in the dying seconds of the first half as Gerard Pique diverted the ball into his own net from Kaka’s centre.
Messi then added his second of the night, exchanging passes with Cesc Fabregas before clipping the ball stylishly over the goalkeeper to round off a deserved win for the hosts.
Celtic's Champions League hopes are hanging by a thread after they slumped to the bottom of Group H with a 1-0 defeat by Ajax at the Amsterdam ArenA.
Lasse Schone, who had scored after coming on as substitute in the 2-1 defeat at Celtic Park, grabbed the winner with a well-taken goal in the 51st minute to sink the Scottish champions, who were far from their best in what was a mostly scrappy game.
Chelsea need a point to reach the second round after seeing off Schalke 3-0 at Stamford Bridge.
A much-changed Chelsea side had made a sloppy start, but they took the lead on 31 minutes when Samuel Eto’o -- with echoes of his recent contribution against Cardiff -- charged down Timo Hildebrand and deflected the goalkeeper’s clearance directly into the net.
Eto’o added to his tally in more conventional fashion early in the second half, collecting Willian’s pass before curling expertly across Hildebrand and into the corner.
The Blues wrapped up the win when substitutes Frank Lampard and Demba Ba combined, with the midfielder lofting the ball over the top for Ba to swivel and fire into the corner.
Basel substitute Giovanni Sio scored in injury time to claim a 1-1 draw against Steaua Bucharest at St Jakob Park after Federico Piovaccari's opener.
Atletico Madrid booked their place in the last 16 with a 4-0 win over group minnows Austria Vienna.
Centre-back Joao Miranda got the ball rolling by scoring the first after 11 minutes, and soon Raul Garcia doubled the advantage with a headed goal. Filipe Luis increased the lead on the stroke of half-time and then Diego Costa finally added his name to the scoresheet on 82 minutes.
Diego Simeone's side will go into the second round draw seeded as group winners, having won all of their four games -- a record only matched by last year's winners Bayern Munich.
Zenit St Petersburg were held to a 1-1 draw at home to Porto in Wednesday's early kick-off.
Porto took the lead on 23 minutes when Lucho Gonzalez headed in at the far post from Danilo’s cross, but Zenit hit back swiftly as former Porto striker Hulk took advantage of a defensive mix-up to nip in, take the ball past goalkeeper Helton and slot into the empty net.
The Brazil international had a chance to put the Russian side ahead early in the second half, but his tame penalty -- awarded for a Nicolas Otamendi handball -- was saved by Helton, and the hosts ultimately had to settle for a point despite applying late pressure.
Information from the Press Association was used in this report