Real, Shakhtar Donetsk and Manchester City all scored four as 36 goals went in and the last 16 began to take shape with half the qualifiers known with one round of matches to play.
Holders Bayern, assured of their last-16 place before Wednesday's Group D matches, set a Champions League record of 10 successive wins with a 3-1 victory at CSKA Moscow which beat the record of nine established by Barcelona in 2002-03.
Bayern won in the wintry Russian capital with goals from Arjen Robben, Mario Goetze and a Thomas Mueller penalty.
"Playing on this pitch today was a bit adventurous," coach Pep Guardiola said when asked about the snow.
"It was difficult because the players had no grip, But over 90 minutes we were better than our opponents. Getting 10 wins in a row is very hard and I am proud of my players, the club and everyone involved."
In warmer conditions in Madrid, Gareth Bale, the world's most expensive player, opened the scoring with a stunning free kick in a 4-1 triumph over Galatasaray that ensured record nine-times European champions Real took top spot in Group B.
Real were without the injured Cristiano Ronaldo but were too strong for the Turkish side even though defender Sergio Ramos was dismissed before halftime, the 17th red card of his Real career.
Coincidentally, Real also reached the knockout stage for the 17th successive season.
Juventus moved from bottom spot to second in the same group with a 3-1 win over FC Copenhagen in Turin, Arturo Vidal scoring a hat-trick that included two penalties.
"Its the first time I have scored three goals in a match in my career so I'm happy especially because we won," the Chilean said.
The win moved Juve onto six points and they will advance if they avoid defeat at Galatasaray, who have four points, in their final match.
Manchester United scored their biggest away win in the Champions League by crushing Leverkusen 5-0 in Group A with goals from Antonio Valencia, an own goal from Emir Spahic, Jonny Evans, Chris Smalling and Nani.
Although he did not score, Wayne Rooney was outstanding while Ryan Giggs, two days before his 40th birthday, was also hugely impressive.
Giggs told Sky Sports: "It was a bonus to score five away from home. The front four were really quick and I am still really enjoying it."
Leverkusen slipped from second to third due to Shakhtar's 4-0 victory over bottom club Real Sociedad.
Shakhtar, who have eight points, go to United in their last game on Dec. 10 while Leverkusen, who have seven points, visit Sociedad, bottom and out of Europe altogether with one.
Paris St Germain also made it through by beating Olympiakos Piraeus 2-1 in France after Zlatan Ibrahimovic gave them the lead with an early goal on his 100th Champions League appearance.
The match appeared to be going away from PSG when Marco Verratti was sent off early in the second half and Kostas Manolas equalised for the visitors with nine minutes left.
But Edinson Cavani sealed the win with an emphatic drive in the 90th minute to lift PSG on to 13 points.
While PSG were securing top spot in Group C, Benfica improved their chances in the same section with a late winner in a 3-2 victory at Anderlecht that took them up to seven, the same as Olympiakos.
The game swung both ways with Chancel Mbemba giving Anderlecht an early lead before he put through his own net seven minutes into the second half to put Benfica 2-1 up.
Anderlecht made it 2-2 with time running out which left Benfica facing the exit door until Rodrigo, who came on as an 87th minute substitute, hit the winner two minutes later.
Benfica can now qualify if their result in their last match at home to PSG is better than Olympiakos's against Anderlecht.
Manchester City, who like Bayern had qualified before Wednesday's games, beat Viktoria Plzen 4-2 thanks to two late goals from Alvaro Negredo and Edin Dzeko.
Plzen had twice levelled on a night that ended with City scoring four to complete a remarkable scoring sequence at home with three, four, five, six and seven goals in their last five matches at the Etihad Stadium - albeit not in order.
- Sports & Recreation
- Manchester City
- Bayern Munich
- Shakhtar Donetsk
- Manchester United