The AC Milan vs SSC Bari timeline covers official competitive matches between the two clubs from 1928 to 2025, spanning Serie A, Serie B, and Coppa Italia. AC Milan dominate the overall record, but SSC Bari delivered notable upsets during key periods. The rivalry appears in distinct eras due to Bari’s promotions and relegations, with the most recent meeting ending 2–0 for Milan in the 2025 Coppa Italia.
Introduction
The AC Milan vs SSC Bari timeline is not a rivalry built on constant fixtures or fierce hostility. Instead, it reflects how Italian football truly works. Clubs rise, fall, regroup, and occasionally cross paths again. When Milan and Bari meet, it is usually because history, timing, and competition structure align.
This article explains that story clearly and honestly. Rather than rushing through results, it places each meeting in context so you understand why each period mattered, not just what happened.
AC Milan vs SSC Bari – Quick timeline box
| Year / Season | Competition | Match | Result | Why it matters |
|---|---|---|---|---|
| 1928 | Divisione Nazionale | Milan vs Bari | 5–1 | First major recorded meeting |
| 1929 | Divisione Nazionale | Bari vs Milan | 2–2 | Early sign Bari could compete |
| 1949 | Serie A | Milan vs Bari | 9–1 | Biggest win in rivalry history |
| 1960 | Serie A | Bari vs Milan | 3–0 | Bari’s strongest home victory |
| 1961 | Serie A | Milan vs Bari | 1–3 | Famous Bari win at San Siro |
| 1980–83 | Serie B | Milan vs Bari | Multiple wins | Rare lower-division crossover |
| 1991 | Serie A | Bari vs Milan | 2–1 | Bari’s defining modern upset |
| 1995 | Serie A | Milan vs Bari | 0–1 | Iconic Bari away win |
| 2009–11 | Serie A | Multiple | Mixed results | Bari’s last top-flight spell |
| 2011 | Coppa Italia | Milan vs Bari | 3–0 | Milan dominate cup tie |
| 2025 | Coppa Italia | Milan vs Bari | 2–0 | Most recent meeting |
Understanding the nature of this matchup
AC Milan represent continuity and elite expectation. Their history is defined by long spells at the top, European success, and constant pressure to win.
SSC Bari represent resilience and regional pride. Bari’s identity comes from fighting for relevance, earning promotion, and proving they belong whenever they reach the top tier.
Because Bari have moved between divisions over the decades, this fixture appears in distinct phases, not every season. That is why the timeline feels like chapters rather than a single uninterrupted rivalry.
Why the timeline unfolds in chapters
Before diving into specific eras, one structural reality matters most:
- Milan spend most seasons in Serie A
- Bari enter Serie A in cycles
- When Bari are relegated, the rivalry pauses
- It returns through promotion or Coppa Italia draws
This explains the long gaps and sudden reappearances throughout the timeline.
Early encounters: where it all began (1928–1930s)
The first recorded competitive meetings date back to the late 1920s, during the formative years of Italian national football.
What defined this era
- Milan quickly showed attacking strength
- Bari proved they could compete and resist
- Matches were open, physical, and decisive
Key early results
| Year | Competition | Result | Why it mattered |
|---|---|---|---|
| 1928 | Divisione Nazionale | Milan 5–1 Bari | One of the earliest statements by Milan |
| 1929 | Divisione Nazionale | Bari 2–2 Milan | Early sign Bari could stand their ground |
These matches laid the foundation. Milan were stronger, but Bari were never overwhelmed or irrelevant.
Post-war drama and extremes (1940s–1960s)
This era sits at the emotional heart of the AC Milan vs SSC Bari timeline. It includes the most dramatic scorelines and some of Bari’s proudest moments.
Iconic results
| Year | Venue | Result | Historical meaning |
|---|---|---|---|
| 1949 | Milan | Milan 9–1 Bari | Largest margin in the rivalry |
| 1960 | Bari | Bari 3–0 Milan | Bari’s strongest home statement |
| 1961 | Milan | Milan 1–3 Bari | Famous Bari win at San Siro |
These matches shaped long-term memory and remain reference points for supporters.
The overlooked chapter: Serie B meetings (1980s)
Few fans remember that Milan and Bari also met in Serie B during the early 1980s.
Serie B snapshot
| Season | Result | Context |
|---|---|---|
| 1980 | Milan 1–0 Bari | Milan rebuilding after relegation |
| 1982 | Milan 3–1 Bari | Milan pushing back upward |
| 1983 | Bari 1–4 Milan | Milan’s quality clearly visible |
This chapter adds realism and depth to the rivalry’s story.
The defining modern era: belief versus power (1990–2001)
This period gave the rivalry its modern identity. Bari were no longer just surviving. They were competing with belief.
Standout matches
| Year | Match | Why it is remembered |
|---|---|---|
| 1991 | Bari 2–1 Milan | Bari’s most famous modern win |
| 1995 | Bari 3–5 Milan | Rare high-scoring classic |
| 1995 | Milan 0–1 Bari | Iconic Bari away upset |
| 1999 | Bari 2–2 Milan | Proof Bari could hold Milan |
| 2001 | Milan 4–0 Bari | Milan reasserting dominance |
This era earned Bari lasting respect while confirming Milan’s ability to respond under pressure.
A brief return to Serie A relevance (2009–2011)
Bari’s return to Serie A brought the fixture back into focus. Milan were stronger, but the matches were rarely comfortable.
Recent Serie A meetings
| Year | Venue | Result |
|---|---|---|
| 2009 | Bari | 0–0 |
| 2010 | Bari | Milan 2–0 |
| 2010 | Bari | Milan 3–2 |
| 2011 | Milan | 1–1 |
The modern chapter: Coppa Italia return (2025)
After years apart, the rivalry returned through the Coppa Italia.
Latest meeting
| Date | Competition | Venue | Result |
|---|---|---|---|
| 17 Aug 2025 | Coppa Italia | San Siro | Milan 2–0 Bari |
Key moments
- Rafael Leão opened the scoring early
- Christian Pulisic sealed the win
- Milan’s new signings made competitive debuts
- Bari showed discipline but lacked finishing quality
Overall head-to-head record

According to the Transfermarkt AC Milan vs SSC Bari head-to-head record, Milan hold a clear historical advantage across all official competitions.
| Category | Record |
|---|---|
| Total official meetings | 74 |
| AC Milan wins | 49 |
| Draws | 12 |
| SSC Bari wins | 13 |
| Coppa Italia meetings | Milan unbeaten |
FAQs
When did AC Milan and SSC Bari last play?
They last met on August 17, 2025, in the Coppa Italia, where Milan won 2–0.
Who leads the historical head-to-head record?
AC Milan lead comfortably across all official competitions.
What is the biggest win in the rivalry?
Milan’s 9–1 victory in 1949 remains the largest margin.
Has Bari ever beaten Milan at San Siro?
Yes. Bari’s 1–0 win in 1995 is one of the most famous upsets.
Why are there long gaps between meetings?
Because Bari have not consistently played in Serie A, and cup draws do not always pair the clubs.
Conclusion
The AC Milan vs SSC Bari timeline is a story of timing, pride, and perspective.
It shows that football rivalries do not need constant repetition to matter. Milan represent tradition, expectation, and sustained success. Bari represent resilience, courage, and the ability to seize moments when opportunities appear.
Across nearly a century, their paths have crossed just often enough to leave lasting memories. Understanding this timeline means understanding how football history pauses, returns, and continues to matter long after the final whistle.
