Sergio Agüero scored three goals — including the winner in stoppage time — to lead Manchester City over Bayern Munich 3-2 and preserve the English champions' hopes of advancing.
Lionel Messi added the Champions League career scoring record to the La Liga mark he set last weekend, getting his 28th Barcelona hat trick in a 4-0 win Tuesday night at APOEL Nicosia.
Chelsea (3-0-2) won 5-0 at Schalke on goals by John Terry, Willian, Didier Drogba and Ramires plus an own goal by Jan Kirchhoff to advance from Group G.
The 27-year-old Messi scored in the 38th, 58th and 87th minutes — all with his weaker right foot — to give him 74 goals in 91 matches in Europe's top club competition and 17 goals in 17 games overall this season.
Raúl González scored 71 goals in 142 Champions League matches for Real Madrid and Schalke, and current Real star Cristiano Ronaldo has 70 goals entering Wednesday's game at Basel. The hat trick was Messi's fifth in the Champions League.
"I am happy for having achieved such a nice record in a competition of this importance, but the really relevant thing is that we took the three points," Messi said. "Barca played a great match."
He scored three goals Saturday against Sevilla to raise his Spanish League total to 253 in 289 matches, two goals more than Athletic Bilbao's Telmo Zarra scored in 271 La Liga games from 1940-55.
Luis Suárez had opened the scoring in Cyprus with his first competitive goal for Barcelona since he was acquired from Liverpool in July.
Barcelona (4-1) already had clinched advancement from Group F along with Paris Saint-Germain (4-0-1), which beat Ajax 3-1 as Edinson Cavani scored twice and Zlatan Ibrahimovic got his first club goal for nearly three months.
At Manchester, Agüero converted a 21st-minute penalty kick after he was fouled by Mehdi Benatia, who was given a red card by Czech referee Pavel Kralovec. Bayern took a 2-1 lead when Xabi Alonso scored on a free kick in the 40th and Robert Lewandowski on a header five minutes later, but Agüero tied it in the 85th and scored in the first minute of stoppage time.
Bayern (4-1) already had clinched in Group E while Roma, CSKA Moscow and Manchester City all have five points and 1-2-2 records. Roma gained a 1-1 draw in Moscow when Vasily Berezutski's cross in the third minute of stoppage time went over the defense, past goalkeeper Morgan de Sanctis and in at the far post.
City would advance if wins at Roma on Dec. 10 and CSKA fails to win at Bayern.
Sporting Lisbon beat visiting Maribor 3-1 in Group G. In Group H, Porto won 3-0 at BATE Borisov and Athletic Bilbao won 1-0 against Shakhtar Donetsk, which clinched despite the defeat.