# UEFA Champions League 2003/04

De 12de editie van de Champions League werd door FC Porto gewonnen in de finale tegen AS Monaco.

## Voorronde
### Eerste voorronde

| Team 1 | Tot. | Team 2 | 1ste wedstr. | 2de wedstr. |
| Pjoenik Jerevan | 2 - 1 | KR Reykjavík | 1 - 0 | 1 - 1 |
| Sheriff Tiraspol | 2 - 1 | Flora Tallinn | 1 - 0 | 1 - 1 |
| HB Tórshavn | 1 - 5 | FBK Kaunas | 0 - 1 | 1 - 4 |
| FC BATE | 1 - 3 | Bohemian FC | 1 - 0 | 0 - 3 |
| Vardar Skopje | 4 - 2 | Barry Town FC | 3 - 0 | 1 - 2 |
| CS Grevenmacher | 0 - 2 | Leotar Trebinje | 0 - 0 | 0 - 2 |
| Glentoran FC | 0 - 1 | HJK Helsinki | 0 - 0 | 0 - 1 |
| Sliema Wanderers | 3 (uitgoals) - 3 | Skonto Riga | 2 - 0 | 1 - 3 |
| Omonia Nicosia | 2 - 1 | Irtysh Pavlodar | 0 - 0 | 2 - 1 |
| Dinamo Tbilisi | 3 - 3 (2-4 n.p.) | SK Tirana | 3 - 0 | 0 - 3 |

### Tweede voorronde

| Team 1 | Tot. | Team 2 | 1ste wedstr. | 2de wedstr. |
| MTK Hungária FC | 3 - 2 | HJK Helsinki | 3 - 1 | 0 - 1 |
| Pjoenik Jerevan | 0 - 3 | CSKA Sofia | 0 - 2 | 0 - 1 |
| FBK Kaunas | 0 - 5 | Celtic FC | 0 - 4 | 0 - 1 |
| Leotar Trebinje | 1 - 4 | Slavia Praag | 1 - 2 | 0 - 2 |
| Sheriff Tiraspol | 0 - 2 | Sjachtar Donetsk | 0 - 0 | 0 - 2 |
| MŠK Žilina | 2 - 1 | Maccabi Tel Aviv | 1 - 0 | 1 - 1 |
| Bohemian FC | 0 - 5 | Rosenborg BK | 0 - 1 | 0 - 4 |
| NK Maribor | 2 - 3 | Dinamo Zagreb | 1 - 1 | 1 - 2 |
| CSKA Moskou | 2 - 3 | Vardar Skopje | 1 - 2 | 1 - 1 |
| Rapid Boekarest | 2 - 3 | RSC Anderlecht | 0 - 0 | 2 - 3 |
| Partizan Belgrado | 3 (uitgoals) - 3 | Djurgården | 1 - 1 | 2 - 2 |
| Wisła Kraków | 7 - 4 | Omonia Nicosia | 5 - 2 | 2 - 2 |
| FC Kopenhagen | 10 - 1 | Sliema Wanderers | 4 - 1 | 6 - 0 |
| SK Tirana | 2 - 7 | Grazer AK | 1 - 5 | 1 - 2 |

### Derde voorronde

| Team 1 | Tot. | Team 2 | 1ste wedstr. | 2de wedstr. |
| Vardar Skopje | 4 - 5 | Sparta Praag | 2 - 3 | 2 - 2 |
| MTK Hungária FC | 0 - 5 | Celtic FC | 0 - 4 | 0 - 1 |
| Rangers FC | 3 - 2 | FC Kopenhagen | 1 - 1 | 2 - 1 |
| Austria Wien | 0 - 1 | Olympique Marseille | 0 - 1 | 0 - 0 |
| Club Brugge | 3 - 3 (4-2 n.p.) | Borussia Dortmund | 2 - 1 | 1 - 2 |
| Sjachtar Donetsk | 2 - 3 | Lokomotiv Moskou | 1 - 0 | 1 - 3 |
| SS Lazio | 4 - 1 | SL Benfica | 3 - 1 | 1 - 0 |
| Dinamo Kiev | 5 - 1 | Dinamo Zagreb | 3 - 1 | 2 - 0 |
| Rosenborg BK | 0 - 1 | Deportivo La Coruña | 0 - 0 | 0 - 1 |
| Grasshopper-Club Zürich | 2 - 3 | AEK Athene | 1 - 0 | 1 - 3 |
| MŠK Žilina | 0 - 5 | Chelsea FC | 0 - 2 | 0 - 3 |
| Celta de Vigo | 3 - 2 | Slavia Praag | 3 - 0 | 0 - 2 |
| Partizan Belgrado | 1 - 1 (4-3 n.p.) | Newcastle United FC | 0 - 1 | 1 - 0 |
| Galatasaray SK | 6 - 0 | CSKA Sofia | 3 - 0 | 3 - 0 |
| RSC Anderlecht | 4 - 1 | Wisła Kraków | 3 - 1 | 1 - 0 |
| Grazer AK | 2 - 3 | Ajax Amsterdam | 1 - 1 | 1 - 2 (n.v.) |

## Groepsfase

16 winnaars van de 3de kwalificatieronde, 10 kampioenen van de 10 competities met het beste coëfficiënt en 6 vicekampioenen van de 6 beste competities werden verdeeld over 8 groepen van 4. De top 2 van elke groep gaat naar de 1/8 finale, de nummer 3 naar de UEFA Cup, de nummer 4 is uitgeschakeld.

### Groep A

| Team | Ptn | Wed | W | G | V | DV | DT | GD |
| 1. Olympique Lyonnais | 10 | 6 | 3 | 1 | 2 | 7 | 7 | 0 |
| 2. Bayern München | 9 | 6 | 2 | 3 | 1 | 6 | 5 | +1 |
| 3. Celtic FC | 7 | 6 | 2 | 1 | 3 | 8 | 7 | +1 |
| 4. RSC Anderlecht | 7 | 6 | 2 | 1 | 3 | 4 | 6 | −2 |
| Eerste speeldag |
| Lyon | 1–0 | Anderlecht |
| Bayern München | 2–1 | Celtic |
| Tweede speeldag |
| Celtic | 2–0 | Lyon |
| Anderlecht | 1–1 | Bayern München |
| Derde speeldag |
| Anderlecht | 1–0 | Celtic |
| Lyon | 1–1 | Bayern München |
| Vierde speeldag |
| Celtic | 3–1 | Anderlecht |
| Bayern München | 1–2 | Lyon |
| Vijfde speeldag |
| Anderlecht | 1–0 | Lyon |
| Celtic | 0–0 | Bayern München |
| Zesde speeldag |
| Lyon | 3–2 | Celtic |
| Bayern München | 1–0 | Anderlecht |

### Groep B

| Team | Ptn | Wed | W | G | V | DV | DT | DS |
| 1. Arsenal FC | 10 | 6 | 3 | 1 | 2 | 9 | 6 | +3 |
| 2. Lokomotiv Moskou | 8 | 6 | 2 | 2 | 2 | 7 | 7 | 0 |
| 3. Inter Milan | 8 | 6 | 2 | 2 | 2 | 8 | 11 | −3 |
| 4. Dynamo Kiev | 7 | 6 | 2 | 1 | 3 | 8 | 8 | 0 |
| Eerste speeldag |
| Dynamo Kiev | 2–0 | Lokomotiv Moskou |
| Arsenal | 0–3 | Internazionale |
| Tweede speeldag |
| Lokomotiv Moskou | 0–0 | Arsenal |
| Internazionale | 2–1 | Dynamo Kiev |
| Derde speeldag |
| Locomotiv Moskou | 3–0 | Internazionale |
| Dynamo Kiev | 2–1 | Arsenal |
| Vierde speeldag |
| Internazionale | 1–1 | Lokomotiv Moskou |
| Arsenal | 1–0 | Dynamo Kiev |
| Vijfde speeldag |
| Lokomotiv Moskou | 3–2 | Dynamo Kiev |
| Internazionale | 1–5 | Arsenal |
| Zesde speeldag |
| Dynamo Kiev | 1–1 | Internazionale |
| Arsenal | 2–0 | Lokomotiv Moskou |

### Groep C

| Team | Ptn | Wed | W | G | V | DV | DT | DS |
| 1. AS Monaco | 11 | 6 | 3 | 2 | 1 | 15 | 6 | +9 |
| 2. Deportivo de La Coruña | 10 | 6 | 3 | 1 | 2 | 12 | 12 | 0 |
| 3. PSV Eindhoven | 10 | 6 | 3 | 1 | 2 | 8 | 7 | +1 |
| 4. AEK Athene | 2 | 6 | 0 | 2 | 4 | 1 | 11 | −10 |
| Eerste speeldag |
| AEK Athens | 1–1 | Deportivo de La Coruña |
| PSV Eindhoven | 1–2 | AS Monaco |
| Tweede speeldag |
| AS Monaco | 4–0 | AEK Athens |
| Deportivo de La Coruña | 2–0 | PSV Eindhoven |
| Derde speeldag |
| Deportivo de La Coruña | 1–0 | AS Monaco |
| AEK Athens | 0–1 | PSV Eindhoven |
| Vierde speeldag |
| AS Monaco | 8–3 | Deportivo de La Coruña |
| PSV Eindhoven | 2–0 | AEK Athens |
| Vijfde speeldag |
| Deportivo de La Coruña | 3–0 | AEK Athens |
| AS Monaco | 1–1 | PSV Eindhoven |
| Zesde speeldag |
| AEK Athens | 0–0 | AS Monaco |
| PSV Eindhoven | 3–2 | Deportivo de La Coruña |

### Groep D

| Team | Ptn | Wed | W | G | V | DV | DT | DS |
| 1. Juventus | 13 | 6 | 4 | 1 | 1 | 15 | 6 | +9 |
| 2. Real Sociedad | 9 | 6 | 2 | 3 | 1 | 8 | 8 | 0 |
| 3. Galatasaray | 7 | 6 | 2 | 1 | 3 | 6 | 8 | −2 |
| 4. Olympiakos Piraeus | 4 | 6 | 1 | 1 | 4 | 6 | 13 | −7 |
| Eerste speeldag |
| Juventus | 2–1 | Galatasaray SK |
| Real Sociedad | 1–0 | Olympiakos CFP |
| Tweede speeldag |
| Olympiakos CFP | 1–2 | Juventus |
| Galatasaray SK | 1–2 | Real Sociedad |
| Derde speeldag |
| Galatasaray SK | 1–0 | Olympiakos CFP |
| Juventus | 4–2 | Real Sociedad |
| Vierde speeldag |
| Olympiakos CFP | 3–0 | Galatasaray SK |
| Real Sociedad | 0–0 | Juventus |
| Vijfde speeldag |
| Olympiakos CFP | 2–2 | Real Sociedad |
| Galatasaray SK | 2–0 | Juventus |
| Zesde speeldag |
| Juventus | 7–0 | Olympiakos CFP |
| Real Sociedad | 1–1 | Galatasaray SK |

### Groep E

| Team | Ptn | Wed | W | G | V | DV | DT | DS |
| 1. Manchester United | 15 | 6 | 5 | 0 | 1 | 13 | 2 | +11 |
| 2. VfB Stuttgart | 12 | 6 | 4 | 0 | 2 | 9 | 6 | +3 |
| 3. Panathinaikos FC | 4 | 6 | 1 | 1 | 4 | 5 | 13 | −8 |
| 4. Rangers FC | 4 | 6 | 1 | 1 | 4 | 4 | 10 | −6 |
| Eerste speeldag |
| Rangers FC | 2–1 | VfB Stuttgart |
| Manchester United | 5–0 | Panathinaikos FC |
| Tweede speeldag |
| Panathinaikos FC | 1–1 | Rangers FC |
| VfB Stuttgart | 2–1 | Manchester United |
| Derde speeldag |
| VfB Stuttgart | 2–0 | Panathinaikos FC |
| Rangers FC | 0–1 | Manchester United |
| Vierde speeldag |
| Panathinaikos FC | 1–3 | VfB Stuttgart |
| Manchester United | 3–0 | Rangers FC |
| Vijfde speeldag |
| VfB Stuttgart | 1–0 | Rangers FC |
| Panathinaikos FC | 0–1 | Manchester United |
| Zesde speeldag |
| Rangers FC | 1–3 | Panathinaikos FC |
| Manchester United | 2–0 | VfB Stuttgart |

### Groep F

| Team | Ptn | Wed | W | G | V | DV | DT | DS |
| 1. Real Madrid | 14 | 6 | 4 | 2 | 0 | 11 | 5 | +6 |
| 2. FC Porto | 11 | 6 | 3 | 2 | 1 | 9 | 8 | +1 |
| 3. Olympique de Marseille | 4 | 6 | 1 | 1 | 4 | 9 | 11 | −2 |
| 4. Partizan Belgrado | 3 | 6 | 0 | 3 | 3 | 3 | 8 | −5 |
| Eerste speeldag |
| Real Madrid | 4–2 | Marseille |
| Partizan Belgrado | 1–1 | FC Porto |
| Tweede speeldag |
| FC Porto | 1–3 | Real Madrid |
| Marseille | 3–0 | Partizan Belgrado |
| Derde speeldag |
| Marseille | 2–3 | FC Porto |
| Real Madrid | 1–0 | Partizan Belgrado |
| Vierde speeldag |
| FC Porto | 1–0 | Marseille |
| Partizan Belgrado | 0–0 | Real Madrid |
| Vijfde speeldag |
| Marseille | 1–2 | Real Madrid |
| FC Porto | 2–1 | Partizan Belgrado |
| Zesde speeldag |
| Real Madrid | 1–1 | FC Porto |
| Partizan Belgrado | 1–1 | Marseille |

### Groep G

| Team | Ptn | Wed | W | G | V | DV | DT | DS |
| 1. Chelsea FC | 13 | 6 | 4 | 1 | 1 | 9 | 3 | +6 |
| 2. AC Sparta Praag | 8 | 6 | 2 | 2 | 2 | 5 | 5 | 0 |
| 3. Beşiktaş JK | 7 | 6 | 2 | 1 | 3 | 5 | 7 | −2 |
| 4. Lazio Roma | 5 | 6 | 1 | 2 | 3 | 6 | 10 | −4 |
| Eerste speeldag |
| Sparta Praag | 0–1 | Chelsea |
| Besiktas | 0–2 | Lazio |
| Tweede speeldag |
| Lazio | 2–2 | Sparta Praag |
| Chelsea | 0–2 | Besiktas |
| Derde speeldag |
| Chelsea | 2–1 | Lazio |
| Sparta Praag | 2–1 | Besiktas |
| Vierde speeldag |
| Lazio | 0–4 | Chelsea |
| Besiktas | 1–0 | Sparta Praag |
| Vijfde speeldag |
| Chelsea | 0–0 | Sparta Praag |
| Lazio | 1–1 | Besiktas |
| Zesde speeldag |
| Sparta Praag | 1–0 | Lazio |
| Besiktas | 0–2 | Chelsea |

### Groep H

| Team | Ptn | Wed | W | G | V | DV | DT | DS |
| 1. AC Milan | 10 | 6 | 3 | 1 | 2 | 4 | 3 | +1 |
| 2. Celta de Vigo | 9 | 6 | 2 | 3 | 1 | 7 | 6 | +1 |
| 3. Club Brugge | 8 | 6 | 2 | 2 | 2 | 5 | 6 | −1 |
| 4. Ajax Amsterdam | 6 | 6 | 2 | 0 | 4 | 6 | 7 | −1 |
| Eerste speeldag |
| AC Milan | 1–0 | Ajax |
| Club Brugge | 1–1 | Celta Vigo |
| Tweede speeldag |
| Celta Vigo | 0–0 | AC Milan |
| Ajax | 2–0 | Club Brugge |
| Derde speeldag |
| Ajax | 1–0 | Celta Vigo |
| AC Milan | 0–1 | Club Brugge |
| Vierde speeldag |
| Celta Vigo | 3–2 | Ajax |
| Club Brugge | 0–1 | AC Milan |
| Vijfde speeldag |
| Ajax | 0–1 | AC Milan |
| Celta Vigo | 1–1 | Club Brugge |
| Zesde speeldag |
| AC Milan | 1–2 | Celta Vigo |
| Club Brugge | 2–1 | Ajax |

## Achtste finale

| Team 1 | Tot. | Team 2 | 1ste wedstr. | 2de wedstr. |
| VfB Stuttgart | 0 - 1 | Chelsea FC | 0 - 1 | 0 - 0 |
| FC Porto | 3 - 2 | Manchester United | 2 - 1 | 1 - 1 |
| Real Sociedad | 0 - 2 | Olympique Lyonnais | 0 - 1 | 0 - 1 |
| Deportivo La Coruña | 2 - 0 | Juventus | 1 - 0 | 1 - 0 |
| Celta de Vigo | 2 - 5 | Arsenal FC | 2 - 3 | 0 - 2 |
| Bayern München | 1 - 2 | Real Madrid | 1 - 1 | 0 - 1 |
| AC Sparta Praag | 1 - 4 | AC Milan | 0 - 0 | 1 - 4 |
| Lokomotiv Moskou | 2 - 2 (uitgoals) | AS Monaco | 2 - 1 | 0 - 1 |

## Kwartfinale

| Team 1 | Tot. | Team 2 | 1ste wedstr. | 2de wedstr. |
| FC Porto | 4 - 2 | Olympique Lyonnais | 2 - 0 | 2 - 2 |
| AC Milan | 4 - 5 | Deportivo La Coruña | 4 - 1 | 0 - 4 |
| Real Madrid | 5 - 5 (uitgoals) | AS Monaco | 4 - 2 | 1 - 3 |
| Chelsea FC | 3 - 2 | Arsenal FC | 1 - 1 | 2 - 1 |

## Halve finale

| Team 1 | Tot. | Team 2 | 1ste wedstr. | 2de wedstr. |
| AS Monaco | 5 - 3 | Chelsea FC | 3 - 1 | 2 - 2 |
| FC Porto | 1 - 0 | Deportivo La Coruña | 0 - 0 | 1 - 0 |

## Finale

| 26 mei 2004 |
| 26 mei 2004 | AS Monaco | 0 - 3 | FC Porto | Arena AufSchalke, Gelsenkirchen Opkomst: 52 000 Scheidsrechter: Kim Milton Nielsen (Denemarken) |
| 26 mei 2004 | | | Carlos Alberto 39' Deco 71' Dmitri Alenitsjev 75' | Arena AufSchalke, Gelsenkirchen Opkomst: 52 000 Scheidsrechter: Kim Milton Nielsen (Denemarken) |

## Kampioen

* UEFA Champions League 2003/2004
* FC Porto 2$^{de}$ titel