It was a feisty affair from the get-go, as it didn't take long for Milan to take the lead after the referee's intervention.
An early chance from Ruben Loftus-Cheek was seemingly blocked away, but a VAR review ruled that the ex-Chelsea man was taken down by goalkeeper Rui Patricio during the sequence. Olivier Giroud stepped up and scored from the spot, much to Roma's frustration, giving Milan the 1-0 lead.
It became two just minutes into the second half as Rafael Leao scored a stunner to double the lead. On a cross in from Davide Calabria, the Portuguese winger was somehow able to hold off Gianluca Mancini while providing an acrobatic finish from just outside the six-yard box.
Milan gave Roma a lifeline when Fikayo Tomori was sent off in the 61st minute after picking up a second yellow card, but the hosts were unable to take advantage as Milan held on for all three points.
And, boy, did they have to hold on. A goal from Leonardo Spinazzola in stoppage time put Milan in danger, with Roma getting several chances in the minutes that followed. Fortunately for Milan, they were able to survive and escape with a massive early-season win.