Zlatan Ibrahimovic went past the 500-goal mark as his double strike in a 4-0 win over lowly Crotone sent Milan back to the top of Serie A.
Ibrahimovic rammed home a fine finish to put Milan in front at the break, reaching a new landmark in his outstanding club career.
The 39-year-old netted a close-range second that sparked a flood of goals midway through the second half, as Ante Rebic scored twice in 70 seconds.
Inter had replaced their city rivals at the top after winning at Fiorentina on Friday, but Stefano Pioli's man reasserted their authority in a gripping title battle.
Milan had a cleverly worked early goal disallowed after Ibrahimovic was spotted offside in the build-up. The Swede had contributed to the move with a neat pass into Rafael Leao, whose smart backheel was turned in by Davide Calabria.
Crotone's Samuel Di Carmine had a glorious chance in the 10th minute but glanced a header wide from 10 yards, and the visitors barely threatened again.
Alexis Saelemaekers saw Leao snatch a chance away from him and fire wide after Ante Rebic threaded a ball intended for the Belgian, much to the scorn of the lurking Ibrahimovic.
But the goal Milan had been threatening finally arrived when Ibrahimovic played a one-two with Leao, who slotted a perfect return ball behind the Crotone defence for his strike partner to drive into the far corner.
Milan's superiority was more distinct in the second half, as they pushed for more goals. Leao was denied by a fine save from Cordaz and Theo Hernandez thrashed narrowly wide.
The second goal came in the 64th minute when Ibrahimovic tapped in a low cross from left-back Hernandez, the 501st goal of his career being one of his easiest.
The points were safe when Rebic headed in substitute Hakan Calhanoglu's left-wing corner in the 69th minute, but Rebic struck again for good measure moments later, thrashing in from eight yards with Calhanoglu again the provider.
Ibrahimovic had a close-range header saved almost on the line as Cordaz denied him a hat-trick before he and Rebic were replaced, their treble hopes over but Milan's title bid very much alive.
What does it mean? Milan make a statement
Milan had lost two of their previous three home league games, after a series of 13 home games without defeat (nine wins and four draws), but this was more like the performance of prospective champions.
Pioli's team needed a response after those losses to Juventus and Atalanta, and this was something close to a statement win.
Inter may prove hard to shake off, but however the Scudetto battle unfolds, Milan have taken an extraordinary step forward this season.
Zlat'll do nicely
Across his two spells at the club, Ibrahimovic has now scored 83 goals in all competitions. Only at Paris Saint-Germain, where he netted 156, has he scored more for one club.
Even after all these years, his nose for a goal is remarkable. He has six doubles in Serie A this season, and 14 goals in the competition from 10 starts and a brief substitute appearance.
It rained goals, and Crotone need to fix their leak
As Ibrahimovic reached a notable total, so too did Crotone. It is now 50 goals that they have shipped in just 21 Serie A games this season, and they have picked up fewer points away from home than any other side within the 'top five' European leagues this season - just two.
They edged the possession battle in the first half (54.7 per cent) and overall (50.5 per cent), but that was about all they had to show for the 90 minutes.
Milan are back in Serie A action when they travel to face Spezia next Saturday, with Crotone hosting Sassuolo a day later.