The good, the bad and the ugly: AC Milan’s 2025 year in review

The good, the bad and the ugly: AC Milan’s 2025 year in review

This has certainly been an interesting year for AC Milan, and for the final article of the year, we wanted to take a look back at some of the big moments.

It has been a year. That might be the best way to put it for Milan. As we know, it is never easy to follow the Rossoneri; there are always ups and downs, and this one has certainly had enough to fill a few years, let alone one!

In terms of the Rossoneri’s best win of the year, we struggle to look past the 3-0 win in the Coppa Italia semi-final. Despite the negativity surrounding almost everything at the time, that game offered a chance to enjoy something again.

A huge win that in reality meant nothing. However, turning over your rivals in the ‘away’ fixture in one of your worst seasons in recent memory is certainly fun.

Milan have scored a number of nice goals this year, but Adrien Rabiot’s strike against Torino takes some topping. It is one of those strikes that looks good in slow motion or at the speed at which it was hit. We’ve left it below for you to enjoy again!

Similarly to the best goal, the best assist of the year also came this season, when Christian Pulisic made a brilliant run, even coming off the pitch, before finding Alexis Saelemaekers in the box to get the lead against Napoli. A fantastic piece of work.

In terms of best player, it feels wrong to suggest anyone other than Pulisic. The American has been the guy for the Diavolo on so many occasions. Whether it’s the moment to start a game or finish it.

The pressure has often fallen on his shoulders, and he has delivered when it has mattered. Our player of the year.

Picking out the best moment of the year is certainly a tough one. Despite the bad bits, there are certainly a few that stick out on the good side. However, we think the return of Massimiliano Allegri was the best.

It signified a return to the roots, which Milan have needed for far too long. Regardless of that, it was also a return to experience and ambition. His first six months back at Milanello have been fantastic. Let’s hope 2026 is even better.

Picking a breakout star again is slightly difficult, but we feel it is between two: Alexis Saelemaekers and Davide Bartesaghi. We’ve sided with the latter. Although the Belgian’s year could certainly be defined as a breakout, there can be no denying that it has been Bartesaghi’s.

The Italian has been waiting in the wings for what feels like ages, and when his moment arrived, he took it. Now, he feels like that spot could be his for the foreseeable future. At 20 years old, he could start to create a legacy.

It feels incredibly easy to pick out the worst game of the year, and that is the Coppa Italia final. In the weeks before, it seemed like Milan were maybe getting back on track. Hope was building and although it was a torrid year, maybe there would be an escape.

Of course, it did not play out that way, though. Instead, the Rossoneri were well beaten and never looked up for the fight. If a game could define a bad year, you’d struggle to find a worse one than that…

On a similar note, picking a worst moment feels quite easy as well. It is probably not a shock, then, that we have picked Sergio Conceicao and Davide Calabria’s spat on the field after the win against Parma.

The captain and manager going at it as they did just wasn’t great, and it only reinforced the feeling of toxicity around the club. A moment to forget…

Do you disagree with any of our picks? Let us know below or on X @SempreMilanCom, using the template provided! 

Welcome to our Live Comments section, where new comments will appear automatically

Happy new year Rossoneri! Wish you all the best for the upcoming year and as always Forza Milan ❤️🖤

Quick take: Big picture: the update fits broader trends across the league with schedule pressure and tight tables. Supporters will watch for clarity from training ground reports and official briefings. We’ll keep an eye on confirmed details as the story develops from official sources.

Leave a Reply

Your email address will not be published. Required fields are marked *

Premier League
SAT 12:30
MUN
-
MCI
-
Premier League
SAT 15:00
LEE
-
FUL
-
Premier League
SAT 15:00
LIV
-
BUR
-
Premier League
SAT 15:00
SUN
-
CRY
-
Premier League
SAT 15:00
TOT
-
WHU
-
Premier League
SAT 15:00
CHE
-
BRE
-
Premier League
SAT 17:30
NOT
-
ARS
-
Premier League
SUN 14:00
WOL
-
NEW
-
Premier League
SUN 16:30
AVL
-
EVE
-
Premier League
MON 20:00
BHA
-
BOU
-
Serie A
17:30
HVE
-
BOL
-
Bundesliga
19:30
FCA
-
UNB
-
Serie A
19:45
COM
-
MIL
-
Ligue 1
FRI 18:00
ASM
-
FCL
-
Bundesliga
FRI 19:30
SVW
-
SGE
-
Serie A
FRI 19:45
PIS
-
ATA
-
Primera Division
FRI 20:00
ESP
-
GIR
-
Championship
FRI 20:00
WBA
-
MID
-
Ligue 1
FRI 20:00
PSG
-
LIL
-
Primeira Liga
FRI 20:15
SPO
-
CAS
-
Championship
SAT 12:30
IPS
-
BLA
-
Championship
SAT 12:30
COV
-
LEI
-
Championship
SAT 12:30
WAT
-
MIL
-
Primera Division
SAT 13:00
RMA
-
LEV
-
Serie A
SAT 14:00
UDI
-
INT
-
Bundesliga
SAT 14:30
TSG
-
B04
-
Bundesliga
SAT 14:30
WOB
-
HEI
-
Bundesliga
SAT 14:30
KOE
-
M05
-
Bundesliga
SAT 14:30
BVB
-
STP
-
Bundesliga
SAT 14:30
HSV
-
BMG
-
Championship
SAT 15:00
SOU
-
HUL
-
Championship
SAT 15:00
PNE
-
DER
-
Championship
SAT 15:00
CHA
-
SHE
-
Championship
SAT 15:00
STK
-
QPR
-
Championship
SAT 15:00
OXF
-
BRI
-
Championship
SAT 15:00
SHE
-
POR
-
Championship
SAT 15:00
WRE
-
NOR
-
Primera Division
SAT 15:15
MAL
-
ATH
-
Eredivisie
SAT 15:30
AJA
-
GOA
-
Primeira Liga
SAT 15:30
GIL
-
CDN
-
Ligue 1
SAT 16:00
RCL
-
AJA
-
Serie A
SAT 17:00
NAP
-
SAS
-
Primera Division
SAT 17:30
OSA
-
OVI
-
Championship
SAT 17:30
SWA
-
BIR
-
Bundesliga
SAT 17:30
RBL
-
FCB
-
Eredivisie
SAT 17:45
ZWO
-
AZ
-
Ligue 1
SAT 18:00
TOU
-
NIC
-
Primeira Liga
SAT 18:00
AVS
-
FCA
-
Primeira Liga
SAT 18:00
ALV
-
MOR
-
Eredivisie
SAT 19:00
EXC
-
TEL
-
Eredivisie
SAT 19:00
SIT
-
PSV
-
Serie A
SAT 19:45
CAG
-
JUV
-
Eredivisie
SAT 20:00
NAC
-
NEC
-
Primera Division
SAT 20:00
BET
-
VIL
-
Ligue 1
SAT 20:05
ANG
-
MAR
-
Primeira Liga
SAT 20:30
RIO
-
BEN
-
Eredivisie
SUN 11:15
HEE
-
GRO
-
Serie A
SUN 11:30
PAR
-
GEN
-
Primera Division
SUN 13:00
GET
-
VAL
-
Eredivisie
SUN 13:30
HER
-
TWE
-
Eredivisie
SUN 13:30
VOL
-
UTR
-
Ligue 1
SUN 14:00
RC
-
FCM
-
Serie A
SUN 14:00
BOL
-
FIO
-
Bundesliga
SUN 14:30
VFB
-
UNB
-
Primera Division
SUN 15:15
ATL
-
ALA
-
Primeira Liga
SUN 15:30
CD
-
FAM
-
Eredivisie
SUN 15:45
FEY
-
SPA
-
Ligue 1
SUN 16:15
NAN
-
PFC
-
Ligue 1
SUN 16:15
REN
-
HAC
-
Bundesliga
SUN 16:30
FCA
-
SCF
-
Serie A
SUN 17:00
TOR
-
ROM
-
Primera Division
SUN 17:30
CEL
-
RAY
-
Primeira Liga
SUN 18:00
TON
-
SCB
-
Ligue 1
SUN 19:45
LYO
-
BRE
-
Serie A
SUN 19:45
MIL
-
USL
-
Primera Division
SUN 20:00
RSO
-
FCB
-
Primeira Liga
SUN 20:30
GUI
-
FCP
-
Serie A
MON 17:30
CRE
-
HVE
-
Serie A
MON 19:45
LAZ
-
COM
-
Primera Division
MON 20:00
ELC
-
SEV
-
Primeira Liga
MON 20:15
AMA
-
EST
-
UEFA Champions League
TUE 15:30
KAI
-
BRU
-
UEFA Champions League
TUE 17:45
FK
-
MCI
-
Championship
TUE 19:45
SHE
-
BIR
-
Championship
TUE 19:45
COV
-
MIL
-
Championship
TUE 19:45
WBA
-
NOR
-
Championship
TUE 19:45
OXF
-
QPR
-
Championship
TUE 19:45
CHA
-
DER
-
Championship
TUE 19:45
SWA
-
BLA
-
Championship
TUE 19:45
IPS
-
BRI
-
Championship
TUE 19:45
PNE
-
HUL
-
UEFA Champions League
TUE 20:00
TOT
-
BVB
-
UEFA Champions League
TUE 20:00
RMA
-
ASM
-
UEFA Champions League
TUE 20:00
VIL
-
AJA
-
UEFA Champions League
TUE 20:00
KOB
-
NAP
-
Championship
TUE 20:00
WRE
-
LEI
-
UEFA Champions League
TUE 20:00
OLY
-
B04
-
UEFA Champions League
TUE 20:00
SPO
-
PSG
-
UEFA Champions League
TUE 20:00
INT
-
ARS
-
UEFA Champions League
WED 17:45
QAR
-
SGE
-
UEFA Champions League
WED 17:45
GAL
-
ATL
-
Eredivisie
WED 17:45
AZ
-
EXC
-
Championship
WED 19:45
SOU
-
SHE
-
Championship
WED 19:45
WAT
-
POR
-
Championship
WED 20:00
STK
-
MID
-
UEFA Champions League
WED 20:00
FCB
-
USG
-
UEFA Champions League
WED 20:00
SLP
-
FCB
-
UEFA Champions League
WED 20:00
JUV
-
BEN
-
UEFA Champions League
WED 20:00
MAR
-
LIV
-
UEFA Champions League
WED 20:00
CHE
-
AEP
-
UEFA Champions League
WED 20:00
ATA
-
ATH
-
UEFA Champions League
WED 20:00
NEW
-
PSV
-