Serie A | Milan 3-2 Atalanta: Rabiot inspiration before risky final stretch
Milan dominated for an hour and then switched off, almost fumbling the 3-0 lead as Atalanta mounted a fightback, but scraping the 3-2 victory with a decisive Adrien Rabiot.
Both teams were fresh from European victories on Thursday and hoping to carry that confidence into Serie A. The Rossoneri crushed RB Salzburg 4-0 with an Alphadjo Cisse hat-trick, but he was rested amid squad rotation, with Matteo Gabbia and Alexis Saelemaekers long-term absentees.
La Dea beat Pafos 3-1 in the Conference League and were finding form after a victory against Venezia, although Giacomo Raspadori joined Franck Kessie, Giorgio Scalvini, Odilon Kossounou, Isak Hien and Kamaldeen Sulemana on the treatment table, plus suspended Eljif Elmas.
Adrien Rabiot blasted over from a promising position, and Christian Pulisic had the ball in the net on 13 minutes, but was offside when Goncalo Ramos flicked on the Samuel Chukwueze low cross from the right.
La Dea responded with Nikola Krstovic running onto a Jonathan Rowe ball, but as he dribbled around Mike Maignan, the angle was too narrow and he found the side-netting.
Atalanta’s injury crisis went from bad to worse when Sead Kolasinac hobbled off, so youth team player Relja Obric made his debut. Within minutes, he got his hand in the way of a Yunus Musah strike to deflect it wide for a penalty, spotted by VAR, converted by Goncalo Ramos sending Marco Carnesecchi the wrong way.
The hosts dominated possession and doubled their lead when Diego Moreira’s slide-rule pass found Rabiot, who cut inside and drilled through Obric’s legs into the near bottom corner, leaving Carnesecchi stranded. It was the France international’s fourth goal involvement in as many Serie A games.
Chukwueze bent a finish just wide from inside the area, then Rabiot saw his ferocious volley charged down by Thomas Kristensen’s hand for another penalty. This time Carnesecchi went the right way to parry the Goncalo Ramos spot-kick.
However, Milan did add a third goal on the resulting corner, as Rabiot flicked it on to the back post for the Mario Gila header from point-blank range. It was the ex-Lazio defender’s first Serie A goal since 2024.
Atalanta finally threatened after a dismal performance with Nikola Krstovic’s low drive from the edge of the area thumping the base of the upright on a Gianluca Gaetano assist after 63 minutes.
It was only a warning, as moments later Gaetano ran onto the Krstovic lay-off to place a snooker shot past Mike Maignan from a tight angle and get the visitors on the board.
Samardzic fired over, but Atalanta got back into it when Raoul Bellanova sprinted away down the right and rolled across for Krstovic to sweep in.
Milan switched off when 3-0 up and nearly conceded for 3-3 moments later, as Maignan rushed off his line to make himself big, using his legs to parry from Davide Zappacosta one-on-one at the near post.
Carnesecchi got down to palm away an Ardon Jashari daisy-cutter, Zappacosta fired into the arms of Maignan and Goncalo Ramos saw a stoppage-time counter denied, but it was tense to the bitter end.
Milan 3-2 Atalanta
Goncalo Ramos pen 24 (M), Rabiot 43 (M), Gila 58 (M), Gaetano 66 (A), Krstovic 81 (A)
Saved penalty: Goncalo Ramos 57 (M)
18-10-2026 17:00
MatchDay 7
Live 3 - 2
Player statistic
1st half
| Gonçalo Ramos | 24' | |||
| Adrien Rabiot | 41' | |||
| Adrien Rabiot (Assist: Diego Moreira) | 43' |
2nd half
| Gonçalo Ramos | 57' | |||
| Mario Gila (Assist: Adrien Rabiot) | 57' | |||
| 66' | Gianluca Gaetano (Assist: Nicola Zalewski) | |||
| 68' | Éderson | |||
| 78' | Relja Obric | |||
| 81' | Nikola Krstovic (Assist: Raoul Bellanova) |
Milan
Atalanta
Starting lineups
16 Mike Maignan Goalkeeper
34 Mario Gila Defender 84'
5 Koni De Winter Defender
31 Strahinja Pavlovic Defender
12 Adrien Rabiot Midfielder
14 Luka Modric Midfielder 75'
80 Yunus Musah Midfielder 75'
11 Christian Pulisic Attacker 75'
22 Diego Moreira Attacker
9 Gonçalo Ramos Attacker
21 Samuel Chukwueze Attacker 53'
29 Marco Carnesecchi Goalkeeper
47 Lorenzo Bernasconi Defender 75'
16 Raoul Bellanova Defender
23 Sead Kolasinac Defender 20'
31 Thomas Kristensen Defender
13 Éderson Midfielder
11 Jonathan Rowe Midfielder 59'
10 Lazar Samardžić Midfielder 75'
8 Mario Pasalic Midfielder 59'
17 Charles De Ketelaere Attacker
90 Nikola Krstovic Attacker
Substitutes
42 Filippo Terracciano Midfielder
70 Alphadjo Cissè Attacker
33 Davide Bartesaghi Defender
73 Francesco Camarda Attacker
96 Lorenzo Torriani Goalkeeper
35 Valeri Vladimirov Defender
28 Christian Comotto Midfielder
13 Sankhoun Diawara Defender
41 Leo Paul Bouyer Goalkeeper
20 Omari Hutchinson Midfielder 53'
8 Ruben Loftus-Cheek Midfielder 75'
2 Pervis Estupiñán Defender 75'
30 Ardon Jashari Midfielder 75'
23 Fikayo Tomori Defender 84'
57 Marco Sportiello Goalkeeper
53 Matteo Plaia Defender
41 Javison Idele Midfielder
45 Digne Kaelas Pounga Midfielder
51 Mattia Sonzogni Goalkeeper
40 Relja Obric Defender 20'
59 Nicola Zalewski Midfielder 59'
70 Gianluca Gaetano Midfielder 59'
77 Davide Zappacosta Defender 75'
9 Gianluca Scamacca Attacker 75'