Milan know a victory here will guarantee their return to the Champions League, while Cagliari are already sure of their Serie A safety.
It kicks off at 19.45 UK time (18.45 GMT), you can follow all the build-up and action as it happens on the LIVEBLOG.
The two races at each end of the table intersect in this penultimate round, as the Rossoneri will be in the top four with a win, because they have a superior head-to-head record with Juventus.
On the other hand, the Sardinians would’ve been able to guarantee their Serie A status for another season with a point, but that isn’t even necessary following Crotone’s last-gasp equaliser with Benevento.
Cagliari are now safe and were already celebrating in the team hotel this afternoon when the news came through from Benevento.
Zlatan Ibrahimovic is out for the rest of the season and will also miss Euro 2020 with Sweden due to a knee injury, so Ante Rebic again leads the attack after his hat-trick in a 7-0 win over Torino midweek.
Brahim Diaz has been a revelation in the trequartista role, with Hakan Calhanoglu on the left, while Alexis Saelemaekers returns from suspension.
They could return to the Champions League for the first time since 2013-14, as they have a superior head-to-head record with Juventus.
Cagliari are still missing Marko Rog and Gaston Pereiro, using Radja Nainggolan to support Joao Pedro and Leonardo Pavoletti.
The Sardinians have suffered an extraordinary 15 consecutive defeats at San Siro.
Milan: G Donnarumma; Calabria, Kjaer, Tomori, Theo Hernandez; Bennacer, Kessie; Saelemaekers, Brahim Diaz, Calhanoglu; Rebic
Milan bench: Tatarusanu, Dalot, Kalulu, Castillejo, Hauge, Krunic, Meite, Tonali, Leao, Maldini, Mandzukic
Cagliari: Cragno; Ceppitelli, Godin, Carboni; Nandez, Deiola, Marin, Lykogiannis; Nainggolan; Joao Pedro, Pavoletti
Cagliari bench: Aresti, Vicario, Tripaldelli, Klavan, Asamoah, Rugani, Zappa, Tramoni, Duncan, Simeone, Cerri, Sottil