Borussia Dortmund came from two goals down to draw 2-2 with Real Madrid and earn a point that sees the German club qualify for the Champions League last 16 as Group F winners.
Karim Benzema scored twice to hand Real a healthy lead but Pierre-Emerick Aubameyang pulled one back for Dortmund and then Marco Reus sealed the draw in the final minute.
Ten-times champions Real progress as group runners up while Legia Warszawa, who beat Sporting 1-0 head to the Europa League.
Premier League champions Leicester City suffered their first defeat in the final round of group matches.
They were stuffed 5-0 at Porto but Claudio Ranieri’s men had already done enough prior to win Group G.
Porto’s victory secured them a place in the knockout stages as group runners-up while Europa League-bound FC Copenhagen beat Club Brugge 2-0 to condemn the Belgians to a sixth defeat from six matches.
Gonzalo Higuain and Daniele Rugani both scored to hand Juventus a 2-0 win over Dinamo Zagreb and ensure the Italian champions finished top of Group H.
Juventus will be joined in the Last 16 of Europe’s top club competition by Sevilla who kept their cool to hold Lyon to a goalless stalemate in France and lock down second place.
Lyon meanwhile will now join the last 32 of the Europa League, a tournament Sevilla have won for the past three editions.
Bayer Leverkusen beat Monaco 3-0 in the final round of matches in Group E.
But the game was just for bragging rights as Monaco had already won the group with the Germans of Leverkusen already guaranteed second place.
Tottenham Hotspur meanwhile ended their Champions League campaign with a 3-1 victory over CSKA Moscow and in the process secured the consolation prize of a place in the continent’s second-tier competition.