Borussia Dortmund advanced to the last 16 of the Champions League on Wednesday night as Group F winners after a dramatic 2-1 victory at pointless, 10-man Marseille.
Robert Lewandowski's neat chip put Dortmund ahead in the fourth minute, but the lead lasted only 10 minutes before Souleymane Diawara headed home an equaliser.
With the score at 1-1 and with Napoli winning against Arsenal, the 2013 finalists looked to be heading out of Europe's premier club competition, despite playing against 10 men following the first-half dismissal of OM midfielder Dimitri Payet.
But, in the 86th minute, Kevin Grosskreutz popped up to fire Dortmund into the knockout stages.
The result meant Napoli dropped into the Europa League despite their 2-0 triumph over Arsenal in Naples boosting them onto 12 points, with Dortmund advancing as group winners.
Ten-man AC Milan scraped into the knockout stages by resisting an all-out Ajax assault to secure a goalless draw at the San Siro.
Milan needed a point to ensure second place in Group H ahead of Frank de Boer's Ajax, and they started brightly in their pursuit of the victory that would rubber-stamp their progress.
However, Riccardo Montolivo's early dismissal left the Rossoneri playing at a disadvantage for over 68 minutes and goalkeeper Christian Abbiati had to draw on all his European experience to keep the desperate Dutch side at bay.
Celtic's campaign ended in jolting fashion as Barcelona star Neymar scored a hat-trick in a 6-1 demolition at the Nou Camp.
With three points from their first five fixtures, Celtic were guaranteed to finish bottom of Group H before the trip to Catalonia and they found themselves behind after only seven minutes when Barca defender Gerard Pique opened the scoring from close range.
Barcelona, who needed a point to finish top of the section, were in scintillating form and when Pedro Rodriguez and Neymar added a second and third before the break a thrashing was on the cards. Neymar scored his second two minutes after the break before grabbing his hat-trick before the hour mark as Celtic all but crumbled.
Substitute Cristian Tello got in on the act in the 71st minute when his drive was heavily deflected past Fraser Forster by Parkhead defender Virgil van Dijk for number six before Georgios Samaras grabbed a late goal.
Schalke secured their place in the last 16 with two second-half strikes earning a 2-0 home victory over 10-man Basle.
The Swiss side headed to Gelsenkirchen in second spot in Group E, trailing leaders Chelsea by a point and leading their hosts by the same margin. But their cause suffered a setback in the 32nd minute when they had defender Ivan Ivanov sent off, and Schalke made the extra man count soon after the interval with goals from Julian Draxler and Joel Matip seeing them through.
Atletico Madrid's impressive campaign continued as they saw off Porto 2-0 in their final Group G game thanks to first-half goals from Raul Garcia and Diego Costa.
The Portuguese champions had their moments, striking the woodwork three times and missing a first-half penalty, but bowed out of the tournament and into the Europa League, with Zenit St Petersburg finishing runners-up despite losing 4-1 to Austria Vienna on Wednesday.
The Austrian side claimed the comfortable victory - their first in the competition - courtesy of goals to Tomas Jun, Roman Kienast and a brace from Philipp Hosiner.
Download ESPN's new UK sport app, a fresh and powerful new way to follow your favourite UK sports news, scores and video.