Benzema's first came inside the first 10 minutes, as he nodded Lucas Vazquez's cross past Gladbach goalkeeper Yann Sommer. Alassane Plea should have equalised, shooting wide when one-on-one with Thibaut Courtois, before Benzema's second header, this time from a sensational delivery from Rodrygo.
Madrid had chances to make it three before half-time, as Luka Modric hit the post and had a goal ruled out for offside, while Benzema and Vazquez also hit the woodwork after the break in a dominant performance over 90 minutes.
Madrid's task here was straightforward: Win, and they would progress to the last 16. That -- and continuing a proud record of always qualifying from the group stage -- was the priority on a night when other considerations such as performance level or even topping the group were secondary. As it is, they did all of that and more with a note perfect display.
At times, they made the gulf in quality between these teams looked vast, a far cry from when Madrid needed to score twice in the last five minutes to earn a draw in October. Madrid can now concentrate on domestic matters -- and climbing up the La Liga table -- after ending a testing Group B campaign on a high.
This was a near-perfect night in which the team, as they so often do, responded to adversity in convincing fashion. As such, there were no negatives to speak of.
Manager rating out of 10
8 -- Zinedine Zidane would have been in serious danger of losing his job if his team had been beaten. Instead, his position is reinforced. His team selection was spot on, with just one change to the team that won 1-0 at Sevilla. That change was an important one though, as captain Sergio Ramos returned from injury for arguably Madrid's most important match of the season so far. Zidane kept Vazquez in the team, and he excelled at right-back, as did Rodrygo on the wing. No tactical tweaks were required during the game, and his substitutions -- bringing on Marco Asensio and Sergio Arribas when the team needed fresh legs -- made sense.
Player ratings (1-10; 10 = best. Players introduced after 70 minutes get no rating)
GK Thibaut Courtois, 7 -- Monchengladbach barely threatened his goal. One early save on Marcus Thuram, and then came off his line to narrow the angles for Plea's chance.
DF Lucas Vazquez, 8 -- Kept his place at right-back with Dani Carvajal only fit enough to make the bench. Did really well, getting forwards plenty despite having Thuram to deal with in defence. A well-placed cross for Benzema's first, and hit the post late on.
DF Sergio Ramos, 7 -- Back after three weeks out. Ramos is no guarantee of defensive solidity -- Madrid had conceded four goals in the two Champions League games he started before tonight -- but his presence as a vocal organiser of the entire team is noted. Unlucky not to score with a second-half header.
DF Ferland Mendy, 7 -- An increasingly reliable presence, his partnership with Ramos on the left side of the defence continues to grow. Solid here against Gladbach's mobile, dangerous-looking frontline.
MF Casemiro, 7 -- Said pre-match that he understands Zidane's rotation of the team, but his presence is a must on the big occasions. Spotted Vazquez in space ahead of Madrid's opening goal. Otherwise quietly efficient.
MF Toni Kroos, 7 -- Worked hard, dropping deep to start passing moves off, and pressing high when necessary. His partnership with Modric was crucial to Madrid's dominance. Had a second-half shot well saved.
MF Luka Modric, 9 -- Ran the game in an elite display of passing, movement and control. Hit the post before half-time and then had a lovely strike ruled out for offside.
FW Vinicius Junior, 7 -- Enjoying a run in the team with Eden Hazard out. His tricks and flicks often don't pay off, but he never stops trying things. Should have shot on goal in the second half when in behind but opted instead to pass.
FW Rodrygo, 8 -- There's something about the Champions League that brings out the best in him. Celebrated his third start in a row with an outstanding delivery for Madrid's second, giving them a cushion on what could have been a difficult night.
FW Karim Benzema, 9 -- Close to top form. Scored his first goals in a month, both nicely-taken headers, and was denied a hat trick by the woodwork. Some gorgeous touches in the second half when dropping deeper, too.
FW Marco Asensio, N/R -- Played just under 20 minutes, coming on for Vinicius, and did well.
MF Sergio Arribas, N/R -- Made his Champions League debut replacing Rodrygo on the right-wing and didn't look overawed.