A busy first half saw Marco Asensio have a shot tipped over the bar by keeper Samir Handanovic with just three minutes played, before Nicolo Barella hit the woodwork with a header and Arturo Vidal fired into the side netting. Karim Benzema opened the scoring, pouncing on Achraf Hakimi's poor back-pass, and Ramos doubled Madrid's lead with a header from Toni Kroos' corner. Lautaro Martinez pulled a goal back a minute later after Barella's backheel flick.
Madrid's hopes of making it through to the knockout stage were looking slim after their 3-2 defeat to Shakhtar Donetsk two weeks ago and going 2-0 down at Borussia Monchengladbach last week. They fought back to get a point in Germany, and this win, against their strongest group rival, puts them in a much better position.
The reaction after Inter fought back to 2-2 was impressive, with Vinicius and Rodrygo providing some energy and cutting edge off the bench. The latter now has five goals in eight Champions League appearances and is a very useful plan B for coach Zinedine Zidane.
Real Madrid have conceded two or more goals in their past five Champions League matches, and they haven't kept a clean sheet in their past six games in all competitions. Going 2-0 up early on, they should have been able to go on and win this one comfortably. Instead, it was a much more difficult, hard-fought victory. The team need to find a way to tighten up at the back or they stand no chance of winning the Champions League this season.
Manager rating out of 10
7 -- The match saw Zidane face friend and former teammate Antonio Conte, a coach Real Madrid almost appointed in 2018. The two managers could not be more different in style and approach: Zidane the laid-back man-manager versus Conte the fiery disciplinarian.
Zidane made two changes from the team that beat Huesca in La Liga, both expected, with Ferland Mendy replacing Marcelo and Kroos coming in for Luka Modric. With the exception of the injured Dani Carvajal, this is now Zidane's preferred big-game eleven. The team started well, helped out by a generous Inter at the back, and then let the visitors back into it, before Zidane's double change paid off.
Player ratings (1-10; 10 = best. Players introduced after 70 minutes get no rating)
GK Thibaut Courtois, 6 -- Saved from Martinez early on. Could do nothing about either of the Inter goals. Courtois needs more protection from his defence.
DF Lucas Vazquez, 6 -- Fit after coming off injured at the weekend, and went up against Ashley Young. Got forward frequently, overlapping Asensio. Caught badly by Vidal, who was booked, before half-time.
DF Raphael Varane, 7 -- One well-timed interception to steal the ball from Martinez in the first half, but left the same player too much space for his goal. Looks better with Ramos alongside him, as he admitted pre-match.
DF Sergio Ramos, 8 -- One hundred goals for Real Madrid now. This one was vintage Ramos, rising to meet Kroos' corner at the near post with a guided header. Busy defensively, getting an early warning when he was beaten by Martinez on the left, and blocking a dangerous second-half cross.
DF Ferland Mendy, 7 -- Looks so comfortable in a Real Madrid shirt now, regardless of the occasion. Strong in attack and defence, with all the ingredients to be Madrid's first-choice left-back for many years to come.
MF Casemiro, 7 -- Performed well in a midfield battle up against the combative duo of Vidal and Marcelo Brozovic.
MF Federico Valverde, 8 -- Has played so well lately that his selection ahead of Modric is no longer a surprise. Put one dangerous-looking early cross into the six-yard box, before shooting twice over the bar in the first half. Played a key role in Madrid's winner too.
MF Toni Kroos, 7 -- Fresh after being rested against Huesca. Swung in a trademark, pinpoint corner delivery for Ramos' goal, and played well before being taken off for Modric.
FW Eden Hazard, 6 -- His second start in a row. Quiet, with some encouraging moments. Madrid will hope one first-half burst into the box, moving at pace with the ball at his feet, was a sign of things to come. Hurt by Brozovic in the second half and was substituted not long afterwards.
FW Karim Benzema, 7 -- Four goals in three games now. Reacted quickly to take advantage of ex-teammate Hakimi's error for the opener. It was his 49th Champions League group-stage goal. Only Lionel Messi and Cristiano Ronaldo have more.
FW Marco Asensio, 6 -- His fifth consecutive start, as Zidane has kept faith in Asensio, backing him to recover his form prior to his cruciate ligament injury. Had an early shot well saved by Handanovic and caused early problems as an inverted winger cutting in from the right, but faded as the match went on.
FW Vinicius Junior, 8 -- Introduced with 25 minutes to go, coming on for Hazard, and set up Rodrygo's goal brilliantly.
FW Rodrygo, 8 -- Replaced Asensio and grabbed a late winner. His goal-scoring record in this competition is impressive.
MF Luka Modric, N/R -- Played the last 10 minutes.