In a game with very few chances, Juventus dented Milan’s Scudetto bid as they kept Stefano Pioli’s side to a goalless draw at the San Siro.
The pattern of play was clear from the start, with Juve willing to give up ground to make room behind Milan.
Massimiliano Allegri’s approach was almost justified within 11 minutes when Juan Cuadrado dragged his left foot wide past the post after jumping Theo Hernandez in.
Milan reacted seven minutes later with a chance of their own. Rafael Leao teamed up on the edge of the area with Junior Messias and Zlatan Ibrahimovic, but Wojciech Szczesny matched his driven commitment.
Davide Calabria then alarmed Szczesny with a succession of attempts at distance, but both flew inches off the upright.
Olivier Giroud – who replaced the injured Ibrahimovic on the half hour – should have performed better after Junior Messiah’s relapse. The Frenchman did well to cross Daniele Rugani in the penalty area, but he failed to touch the ball.
Juventus had their best chance of the game just five minutes after the break. Mattia De Sciglio delivered a flawless cross to the head of Alvaro Morata, but the Spaniard sent a tame header wide of the post.
Milan then created their own chance for cross which was captured by Giroud’s head, but the attacker inexplicably sent his head back over the goal with only Szczesny beating.
Theo Hernandez, unusually quiet as an attacking force, deliberately strode on the hour, but as was the theme of the evening on his part, his effort was comfortably met by the Juventus No.1.
Szczesny was called into action again with 20 minutes left on the clock by a header from Giroud, but the Frenchman couldn’t take his bet enough and was easily made safe.
Weston McKennie came close with a header five minutes before time as the game picked up momentum towards the end.
Here’s how both teams rated.
Mike Maignan (GK) – 5/10 – Hardly had anything to do with Juventus terrible in front of goal.
Davide Calabria (RB) – 6/10 – He dominated his side of the pitch, often moving into the infield to create danger for Milan.
Pierre Kalulu (CB) – 5/10 – Hardly set foot wrong and mastered the threat of Morata and Dybala.
Alessio Romagnoli (CB) – 5/10 – Really managed to show the defensive side and sniff danger before it reached the Milan penalty area.
Theo Hernandez (LB) – 5/10 – Not at his best on the left, but held up to the physical challenge against Cuadrado.
Rade Krunic (CM) – 5/10 – Intelligent with its defensive positioning and the defense of Milan effectively screened.
Sandro Tonali (CM) – 5/10 – Got his foot on the ball during the rare frenetic spells in the game.
Brahim Diaz (AM) – 4/10 – He picked up some really intelligent spaces but was quickly suffocated when he got to the Juventus penalty area.
Junior Messiah (RW) – 5/10 – Quiet compared to Leao on the other side, although he did threaten in the second half.
Zlatan Ibrahimovic (ST) – N/A – With an injury, he stumbled away just before the half hour.
Rafael Leao (LW) – 10/7 – The ball seems to be permanently stuck at his feet, Mattia De Sciglio discovered to his disadvantage.
Olivier Giroud (ST) – 4/10 – Replaced the injured Ibrahimovic and had a few chances that he failed to take.
Alexis Saelemaekers (RW) – N/A
Ismael Bennacer (CM) – N/A
Ante Rebic (LW) – N/A
Alessandro Florenzi (RB) – N/A
Wojciech Szczesny (GK) – 5/10 – Wasn’t forced into acrobatics, with most of Milan’s efforts being pushed straight down his throat.
Mattia De Sciglio (RB) – 5/10 – Struggled in one-on-one defensive duels, often outpaced by Rafael Leao or Brahim Diaz.
Daniele Rugani (CB) – 6/10 – Has ousted Matthijs de Ligt in the Juventus defense and he showed exactly why.
Giorgio Chiellini (CB) – 8/10 – One of those nights when the Italian showed every inch of his experience and read the match exceptionally well.
Alex Sandro (LB) – 5/10 – Improved in the second half but he didn’t have much freedom to burst past the halfway line.
Juan Cuadrado (RM) – 7/10 – Juve’s biggest attacking threat, his side out on the pitch at scorching speed.
Manuel Locatelli (CM) – 5/10 – Booked within ten minutes, with Juventus’ defensive approach limiting his touches.
Rodrigo Bentancur (CM) – 6/10 – Subject of serious interest from Aston Villa and he did himself no harm with an assured performance.
Weston McKennie (LM) – 2/10 – Anonymous and offered Juventus very little offensively.
Allvaro Morata (ST) – 3/10 – His hold-up game was erratic and he couldn’t beat Milan’s central defensive combination.
Paulo Dybala (ST) – 4/10 – His movement made it impossible to pin down as a defender for Milan, but he didn’t threaten the goal with great threat.
Arthur (CM) – N/A
Federico Bernardeschi (RW) – N/A
Moise Kean (ST) – N/A
Adrien Rabbit (LM) – N/A
Dejan Kulusevski (ST) – N/A