Milan secured a top-four Serie A finish with a 1-0 win at Juventus as Olivier Giroud's header dealt a knockout blow to the Bianconeri's own hopes of Champions League qualification.
Still reeling from their 10-point deduction and Monday's miserable 4-1 defeat at Empoli, Juve required a win at Allianz Stadium to take the top-four battle to the season's final matchday.
However, the Bianconeri's lack of attacking thrust was on full display once again, with Giroud scoring the only goal of the game with an outstanding header as half-time approached on Sunday.
The Rossoneri were comfortable from there as they ensured Juve's chaotic season will end on another sour note, piling more pressure on embattled head coach Massimiliano Allegri.
Sandro Tonali headed Junior Messias' delivery over as Milan started brightly, but Juve soon improved, with Angel Di Maria failing to hook Moise Kean's cut-back home on the stretch.
More Bianconeri chances came and went as Federico Chiesa hammered over and Kean worked Mike Maignan from distance, but Juve found themselves behind five minutes before half-time.
Davide Calabria's hanging cross from the right was met with a textbook header from Giroud, who planted the ball beyond Wojciech Szczesny's despairing dive.
Adrien Rabiot forced a comfortable save from Maignan as Juve toiled after the restart, failing to make any attacking headway without injured striker Dusan Vlahovic.
Szczesny stuck out a leg to deny Alexis Saelemaekers and Rafael Leao fired over on the break, while Danilo had a close-range effort blocked in a goalmouth scramble as Juve's bid for Champions League football ended with a whimper.
What does it mean? Milan profit from Juve woes
When Juventus' 10-point deduction was confirmed earlier this week, Milan were the chief beneficiary after being propelled into the top four.
Stefano Pioli's men were determined not to let that advantage slip here, the Rossoneri weathering the Juve storm midway through the first half and deserving the three points after Giroud's goal.
Milan thus completed just their third Serie A double over Juventus in the last 50 years, also doing so in the 1990-91 and 2009-10 campaigns.
Giroud the man of the moment
Giroud has so often been the man for the big occasion for both club and country, and he gave Szczesny no chance with a firm header just as Juventus looked to be in the ascendency.
The 36-year-old striker has now scored 12 times in Serie A this season, his best return in one of Europe's top five leagues since he hit as many Premier League goals for Arsenal in the 2016-17 campaign.
Fatal blow for Allegri?
Allegri has faced stern criticism for most of the campaign, and the pressure may just become intolerable now they will finish outside of Italy's top four for the first time since 2010-11 (when they finished seventh).
Having also fallen short in the Europa League semi-finals, the Bianconeri have suffered three successive defeats for the first time since doing so in 2011 under Luigi Delneri.
What's next?
Milan wrap up their Serie A season against Verona next Sunday, while Juventus will be playing for a Europa League place when they visit Udinese on the same day.