Impresa soltanto sfiorata da parte del Frosinone nella gara che lo ha visto affrontare allo "Stirpe" il Milan. I canarini sono stati sconfitti per 3 a 2, dopo essere stati avanti per 2 a 1 fino a poco meno di venti minuti dallo scadere. Poi le solite ingenuità che ormai sembrano non volere abbandonare in nessun gara la formazione canarina sono costate il ribaltone da parte della formazione rossonera.

La cronaca
A 30 secondi dal fischio d'inizio c'è subito la prima grande occasione della partita per il Frosinone, con il pallone perso in uscita da Maignan. Mazzitelli anticipa Adli e poi serve Soulé, il cui sinistro finisce al lato. Il Milan risponde al 7' con Pulisic che prova a servire in mezzo Giroud, ma Brescianini capisce tutto e allontana. Al 10' buon tentativo del Frosinone con la triangolazione tra Gelli, Soulé e Seck, ma quest'ultimo non riesce ad arrivare sul servizio dell'argentino e la palla si perde sul fondo. Al 16' passa in vantaggio il Milan. Reijnders recupera il pallone a Soulé e lancia Loftus Cheek, che conduce prima di servire Leao. Il cross del portoghese è perfetto per Giroud, che stacca più in alto di Romagnoli e batte un non impeccabile Turati per lo 0-1.

I ciociari provano a reagire prima con Brescianini, che al 19' impegna Maignan e poi con la buona conclusione dal limite al 20' di Seck, che libera il sinistro dopo il passaggio di Harroui. L'estremo difensore rossonero si supera e manda in angolo. Proprio da sviluppi di corner nasce al 21' l'azione che porta al calcio di rigore per il Frosinone. Dalla bandierina Soulé serve corto Gelli che sul cross trova l'intervento di mano di Leao. Pairetto non ha dubbi e indica il dischetto che viene confermato anche dal silent-check del VAR. Dal dischetto Soulé è freddissimo e fa 10 in campionato portando suoi sull' 1 a 1.

La reazione del Milan non si fa attendere e al 30' Giroud serve sulla corsa Pulisic, che da buona posizione trova la risposta di Turati. Pericolo Milan al 35' con il gran cross di Giroud a concludere il contropiede condotto da Leao, ma in area non c'è nessuno pronto a ricevere e il pallone sfila. Al 45' Turati blocca prima un debole colpo di testa di Reijnders e poi nel recupero si supera per evitare l'autogol sulla deviazione di Okoli, che aveva intercettato il cross dalla sinistra di Leao.

La ripresa
Il primo squillo del secondo tempo è del Frosinone con la buona iniziativa all'11' di Kaio Jorge, che dalla sinistra si accentra e poi lascia partire il destro che trova l'esterno della rete. Mazzitelli prova al 12' a sorprendere la difesa rossonera con un cross che è però deviato e facile preda di Maignan. Al 14' si accende Leao che supera due difensori sulla sinistra e poi va il tiro, ben allontanato da Okoli. Al 20' passa il Frosinone: inizia tutto da una punizione battuta velocemente da Barrenechea per Soulé, che premia il grande movimento di Mazzitelli. Il capitano giallazzurro riceve il pallone in area di rigore, poi incrocia con il destro da posizione defilata e sorprende Maignan in mezzo alle gambe per il 2-1.

Al 22' il Milan di nuovo pericoloso con Leao, che salta Gelli ma poi sbaglia al momento del cross. I rossoneri pareggiano al 27'. Sugli sviluppi di calcio d'angolo il pallone arriva ad Adli, che in area di rigore trova Giroud: l'attaccante francese fa la sponda per Gabbia, che da due passi realizza di testa il 2-2. Al 30' ancora chance Milan con Giroud che serve con un filtrante Okafor; Brescianini legge bene la traiettoria del passaggio e sventa il pericolo. Al 36' il Milan trova il vantaggio dopo un'azione prolungata, che in precedenza aveva visto Bennacer andare al tiro, poi stoppato da Romagnoli. Sbaglia però in uscita Lirola e il pallone arriva a Theo, che serve Bennacer. Dopo il cross del numero 4 rossonero, un rimpallo in area di rigore tra Valeri e Romagnoli regala il pallone a Jovic, che di destro batte Turati per il 2-3 finale, che ancora una volta lascia l'amaro in bocca alla formazione di Di Francesco.