Federico Chiesa scored a brilliant brace as Juventus ended Milan's unbeaten start to the season and clinched a crucial 3-1 victory that moves the Serie A champions up to fourth in the table.
Andrea Pirlo's men produced a scintillating attacking display to become the first team to beat leaders Milan in the league in 28 matches and did so without Alvaro Morata.
Ably assisted by Paulo Dybala on both occasions, Chiesa scored with confident finishes in either half and Milan's waves of attacking pressure found Juventus goalkeeper Wojciech Szczesny in fine form before Davide Calabria found the net.
The Bianconeri, who added a third through substitute Weston McKennie, will hope this was a turning point in a tumultuous season, having played with the guile and poise they have lacked for so much of it, while Milan will reflect on a missed opportunity to extend their lead at the top to four points after Inter lost to Sampdoria.
Juventus' high press overwhelmed Milan early on and Paulo Dybala tested Gianluigi Donnarumma from six yards before Chiesa crashed a thunderous shot onto the post.
With 18 minutes played, the Old Lady's superb start paid dividends, Dybala's smart back-heel sending Chiesa into the area and the Fiorentina loanee sent a low shot bouncing into the far corner of Donnarumma's net from 12 yards.
Juve had Szczesny to thank for keeping them ahead with a string of saves but he was powerless to stop Calabria's shot from finding the top corner after the lively Rafael Leao teed him up – although Juventus claimed Adrien Rabiot was fouled in the build-up.
Szczesny got down well to save Diogo Dalot's powerful 20-yard shot as Milan came out firing after the interval but Juve weathered the storm before Aaron Ramsey missed a golden chance to give them the lead, shooting wide from close range with just Donnarumma to beat.
Just after the hour mark, Chiesa struck again, Dybala picking him out on the edge of the box where he bent a superb left-footed shot into the far corner.
Chiesa then left the field with an injury and was replaced by McKennie, who swept home Juventus' third in the 76th minute after a jinking run through Milan's defence by fellow substitute Dejan Kulusevski.