Milan strikes twice in nine minutes to beat Inter 3-1 in the Derby della Madonnina
Pulisic, Rabiot and Moreira scored for an efficient Milan side that weathered Inter's dominance and 19 shots, with Bastoni pulling one back for the Nerazzurri.

Nine minutes. That's all it took for Milan to make life difficult for Inter at a packed Stadio Giuseppe Meazza. Christian Pulisic opened the scoring in the 3rd minute with a header on the low side off a Diego Moreira cross, and before Inter could respond, Adrien Rabiot made it 2-0 in the 9th minute, finishing with his left foot off a corner that Moreira also delivered. Milan went on to win 3-1, spoiling the afternoon for an Inter side that came in as the favorite.
Inter pulled one back quickly, in the 21st minute, when Alessandro Bastoni headed home from point blank range off another corner, the second in a series that threatened to level the match. But Milan had another card up its sleeve: right before halftime, in the 42nd minute, Diego Moreira converted a direct free kick with a left footed strike into the top corner to make it 3-1, the score at the break and, ultimately, the final scoreline.
Dominance that wasn't enough
The strange part is that the result didn't reflect what happened on the field for much of the match. Inter held the majority of possession (56.9 percent to 43.1 percent), fired off 19 shots to Milan's 7 and had 8 shots on target compared to the home side's 4. Inter also won the corner count, 11 to 3. Milan, with less of the ball and fewer chances, was simply sharper when it mattered.
| Statistic | Milan | Internazionale |
|---|---|---|
| Possession (%) | 43.1 | 56.9 |
| Shots | 7 | 19 |
| Shots on target | 4 | 8 |
| Big chances | 2 | 2 |
| Corners | 3 | 11 |
| Passes | 407 | 525 |
| Fouls committed | 8 | 14 |
That gap also shows up in the estimated xG we calculated from the match's shots: 2.269 for Inter compared to just 0.90 for Milan. It's a measure of what was generated over the 90 minutes, not a prediction, but it confirms that Inter created more chances than its opponent needed to take all three points. Milan was clinical with its few forays forward, Inter was wasteful with its many.
In the second half, Inter kept pushing. The team had several headed chances, tried its luck with shots from outside the box, and in the 74th minute appealed for a penalty that VAR ended up waving off. As the substitutes came on, with Zielinski, Mkhitaryan, Dimarco, Esposito and Bonny all entering the match, Cristian Chivu's side kept up the pressure but could not find the second goal that would have put it fully back in the fight.
What the preview said and what actually happened
Before the match, our projection gave Inter a 44 percent chance of winning, against 29 percent for Milan and 27 percent for a draw, with expected goals of 1.62 for Inter and 1.29 for Milan. The result was the exact opposite of what the pre-match numbers suggested: Milan, with less possession and fewer shots, made the most of its efficiency to win a match that, according to the projections, should have tilted the other way.
The win leaves Milan with 21 points in Serie A, four behind an Inter side that sits on 25 after the loss, its first setback of the season according to the standings, having arrived at the match with eight wins and a draw. Milan, for its part, picked up its sixth win of the campaign so far. What this match at the Meazza leaves behind is a lesson in the difference between dominating and finishing: Inter had the ball and the chances, but Milan had the goals when they counted.
EUP
EXC
CHA
LAL
ATO
FOR
CBR
EVE
PAL
VAS
MPT
HBS
PAL
VIC
THS
GUV
UDG
TEP
CUS
SBA
SEV
RMA
LEX
COS
IVA
LDU
BOC
RIV
VIS
RIO
MAR
SCL
ATH
RSO
VAN
SEA
ATL
TOR
NSH
RBNY
NE
MIA
LAF
MIN
POR
HOU
CSL
NCX
CAZ
LEO
JUV
NAP
MAR
TOU
EBS
LAC
SKE
VLL
RFA
FSC
SMT
COL
GTI
QAC
VAR
MOR
SUP
CAV
ISF
ONC
GRE
ATL
ALI
AGU
FAS
ANT