Piotr Zielinski struck a 90th-minute winner as Inter beat 10-man Juventus 3-2 at San Siro, moving eight points clear at the top of Serie A. The Derby d'Italia swung several times, with Andrea Cambiaso scoring for both teams and Manuel Locatelli briefly appearing to rescue a draw for the visitors.
The result leaves Inter firmly ahead of AC Milan before the Rossoneri host Como on Wednesday, while Juventus risk slipping out of the top four if Roma win at Napoli on Sunday. The match also extended a recent trend of high-scoring Derby d’Italia meetings between these long-time rivals.

Inter’s victory in this Derby d’Italia deepened the gap in the title race, with the Nerazzurri now leading Milan by eight points. Juventus, beaten again by a late goal, face added pressure in the Champions League race as Roma could overtake them depending on Sunday’s result in Naples.
The last four Serie A clashes between Inter and Juventus have produced 21 goals, an average of 5.25 per game. That contrasts sharply with the previous six league meetings, which brought only nine goals in total. Cambiaso wrote an unusual piece of Derby d’Italia history by scoring at both ends in the same contest.
Juventus started strongly and created early pressure, but Inter went ahead in the 17th minute when Cambiaso diverted Luis Henrique’s cross past Michele Di Gregorio for an own goal. Within nine minutes, Cambiaso levelled, arriving at the back post to side-foot home after Weston McKennie’s cross eluded Henrique.
Inter almost regained the lead when Bremer cleared Zielinski’s delicate effort from the goal-line, but the match turned towards Simone Inzaghi’s side shortly before half-time. Pierre Kalulu collected a second yellow card on 42 minutes for pulling Alessandro Bastoni, with the Inter centre-back’s fall drawing protests from Juventus players.
Playing a full half with 10 players, Juventus dropped deeper as Inter controlled territory and possession. Di Gregorio produced an outstanding save to deny Hakan Calhanoglu, yet the pressure increased, with Inter introducing fresh attackers from the bench to exploit the numerical advantage and constant crossing opportunities.
The hosts finally broke through after 76 minutes when substitute Francesco Pio Esposito met Federico Dimarco’s high cross with a powerful header into the far corner. Juventus responded quickly, and in the 83rd minute Locatelli curled a precise shot into the bottom-left corner, appearing to secure a hard-earned point despite the dismissal.
Inter refused to settle, continuing to push numbers forward, and were rewarded at the end of normal time. Zielinski collected the ball around 20 yards out and drove a low effort that flew through Locatelli’s legs and beat Di Gregorio, sealing Zielinski’s fifth Serie A goal of the season and deciding this Derby d’Italia.
| Team | Shots | Expected Goals (xG) |
|---|---|---|
| Inter | 21 | 1.88 |
| Juventus | 10 | 0.92 |
Inter finished with 21 shots and 1.88 expected goals, supporting the sense they deserved victory, while Luciano Spalletti’s Juventus attempted 10 shots and generated 0.92 xG, with six of those efforts coming after Kalulu’s dismissal. The combination of late drama, tactical shifts and historic milestones underlined why this Derby d’Italia continues to command attention across Serie A.