Juventus and AC Milan were forced to settle for a share of the points as they played out a goalless draw at the Allianz Stadium on Sunday night.
There are no doubts about who will come away feeling more regrets, as Christian Pulisic missed a penalty kick in the second half by blazing it over the bar. Rafael Leao also sent a sitter wide after coming off the bench, and Milan would have to make do with a draw.
The winning run becomes an unbeaten one for the Rossoneri, who remain in third place but fall two points behind Napoli and Roma, who moved onto 15 points before the international break with wins earlier on Sunday.
Massimiliano Allegri once again opted for consistency in his starting XI, with the only change being Davide Bartesaghi coming in to replace the suspended Pervis Estupinan. Fikayo Tomori passed a late fitness test and kept his spot in the three-man defence.
The opening 10 minutes were cagey as expected, with Milan dominating the ball but not really managing to breach their opponents. The only moments of panic at both ends came via balls from out wide that were scrambled clear.
A nice one-two between Alexis Saelemaekers and Youssouf Fofana saw the latter go down inside the box in the 18th minute while trying to latch onto a feed inside the box, but the shouts for a penalty were rightly ignored.
The game burst into life a bit just before the midway point of the first half. Firstly Adrien Rabiot won the ball back from Conceicao but Pulisic fell over having dribbled the ball into the box, then at the other end a low cross was about to be met by Jonathan David but was cut out in the nick of time.

Juventus grew into the game as they settled into a stance of soaking up Milan’s periods on the ball and trying to cause issues in transition, with a cross and a flick just getting beyond an unmarked David at the far post. Moments later, at the other end, Rabiot shot over from 25 yards with a powerful attempt.
Santiago Gimenez got his first real involvement in the 32nd minute, creating a chance all by himself as he picked the ball up and weaved around challenges to get free on the left side of the box. On his favoured right foot, he could only lift a tame effort into the arms of Di Gregorio, who claimed at the second attempt.
Juve’s main threat was by getting the ball to the byline and looking for pull-backs to one of the runners into the box. It nearly worked perfectly when David met one, yet after a decent touch he slipped over and the danger was averted.
Three minutes before the break, Milan came the closest either side had to breaking the deadlock. Just like the second goal against Napoli one week ago, a driving run from Strahinja Pavlovic seemed to cause confusion, and his cross was met by Gimenez’s glancing header that landed just wide of the far post.
Just a couple of minutes into the second half, Mike Maignan pulled off a simply spectacular stop. A corner was taken short and floated into the box, and Federico Gatti chested the ball down alone in behind the Milan defence, yet the French goalkeeper had sprung off his line and denied him with a reflex stop.
In the 52nd minute, there was a hugely controversial moment that led to Milan being given a penalty. A ball clipped over the top from Modric was about to be met by the run of Gimenez but he was bundled over by Lloyd Kelly. The referee gave the spot kick, which was uphold, yet Pulisic lifted his effort over the bar.
Santi Gimenez 🇲🇽 wins a penalty for Milan and Christian Pulisic 🇺🇸 shamelessly rips the ball from his hands, takes the penalty himself and sends it all the way to Tel Avivpic.twitter.com/RZO6pmyk9r
— erick 🇲🇽 (@AlexisVegaGOAT) October 5, 2025
Milan were not dismayed by the missed penalty but instead seemed more fired up by it. Pulisic drew a low save from Di Gregorio with a fierce shot, then the keeper spilled a striker from Fofana from range but the ball was cleared.
Just after the hour mark, Allegri made his first changes. Gimenez and Fofana were the ones who made way, with Rafael Leao and Ruben Loftus-Cheek coming on.
Leao’s first involvement was not a million miles away from being something quite ridiculous as he tried to lob Di Gregorio from near the halfway line having spotted him off his line, though it ended up just over.
His next involvement was a monumental opportunity to give the Rossoneri the lead. A clipped cross from Pulisic missed Loftus-Cheek’s bicycle kick and fell to Leao at the far post, who chested down well yet somehow dragged his shot wide of the near post from just a few yards out. Shortly after, Christopher Nkunku replaced Pulisic.
The final big chance of the game fell to Leao too, and it was a lovely through ball from Modric that found his run in behind. He didn’t really connect sweetly with his shot, though Di Gregorio did have to save it, and Loftus-Cheek’s rebound attempt was scuffed into the ground.