Manchester City has had tough fixtures and a tight schedule, and the champions’ race against Liverpool doesn't allow Guardiola to rest the team's main stars. The only losses of the Citizens are the right flank of the defense–Cancelo has too many yellow cards, and Walker has not yet recovered from his injury. All other players are fine.
Real Madrid has almost secured the champions title in Spain, so the players are focused only on the Champions League. Real Madrid had very powerful and dramatic playoffs, where the royal club knocked out PSG and Chelsea. So it's too early to dismiss Real Madrid, especially when Benzema is in the team.
Real Madrid scored three goals against another English club in their last away match in Europe. Of course, it will be more difficult to score against City, but the chances are quite real, as the City players are clearly tired. But Real Madrid does not play well defensively either.
Our prediction: both teams to score. We recommend the “BTTS - Yes” bet, odds 1.91