EUROPEAN CUP HISTORY.COM
The qualifying rounds saw two former winners eliminated. Benfica lost 4-1 on aggregate to Lazio, while Borussia Dortmund were beaten in a penalty shootout by Club Brugge.
Benfica v Lazio/Borussia Dortmund v Club Brugge
In Group A, Bayern Munich and Lyon both started their campaigns with wins, but then struggled for results and needed to win their final games to qualify. Bayern beat Anderlecht 1-0 to go through, while Lyon needed a late penalty to beat Celtic 3-2.
Celtic v Lyon/Lyon v Bayern Munich
Internazionale began Group B with a 3-0 win away to Arsenal and a 2-1 victory against Dynamo Kiev, but they failed to win another game and eventually finished in third place. Arsenal remarkably came back from having just one point after three games to end up winning the group. Having lost their opening game 3-0 at home to Inter they gained revenge with a 5-1 win in Milan and went through along with Lokomotiv Moscow.
Arsenal v Internazionale/Internazionale v Arsenal
Group C featured a remarkable 8-3 win for Monaco over Deportivo La Coruna. Monaco won the group and the Spaniards recovered to finish second ahead of PSV Eindhoven and AEK Athens.
Real Madrid v Bayern Munich
There were comfortable wins for holders Milan (4-1 against Sparta Prague) and for Arsenal (5-2 against Celta Vigo.)
Celta Vigo v Arsenal/Milan v Sparta Prague
There were also several very close encounters. Monaco recovered from being 2-0 down in Moscow to knock Lokomotiv out on away goals. One own goal in Stuttgart was enough to see Chelsea through, and two 1-0 wins for Lyon knocked out Real Sociedad.
Stuttgart v Chelsea/Monaco v Lokomotiv Moscow
Two of the favourites were surprisingly defeated. Previous years finalists Juventus lost both legs 1-0 to Deportivo to go out. Manchester United lost 2-1 away to Porto, but were set to go through thanks to a Scholes goal in the return game until Costinha scored in the last minute to send the Portugese side through.
Juventus v Deportivo/Manchester United v Porto
The quarter-finals contained some of the most remarkable ties in the competitions history.The two favourites were sent crashing out after having appeared to be in total control of their contests. Milan won their home leg 4-1 against Deportivo but were then thrashed 4-0 in the return to go out. Real Madrid beat Monaco 4-2 and then went a goal ahead in the return, but Monaco came back with three goals and knocked Real out on away goals.
Arsenal v Chelsea/Porto v Lyon
Chelsea were then well fancied to get the better of Monaco, but again there was a surprise. With the first leg at 1-1 in Monte Carlo, the home team were reduced to ten men, but they still recovered to win 3-1. Then in the return Chelsea led 2-0, but Monaco hit back for a 2-2 draw that saw them into the final.
Monaco v Chelsea/Chelsea v Monaco
The other semi-final was settled by one penalty kick. Deportivo drew 0-0 away to Porto, but in the second leg the Portugese side won a penalty on the hour and Derlei converted to score the decisive goal of the tie.
Deportivo La Coruna v Porto
After all their heroics in getting to the final, Monaco seemed to run out of steam in the end. It was Porto who ran out comfortable winners in Gelsenkirchen by three goals to nil. For the second time in their history, Porto were European champions. An unexpected winner in a season of unexpected results.
2004 European Cup Final (Gelsenkirchen)
Porto 3 Monaco 0
Porto: Vitor Baia, Paulo Ferreira, Nuno Valente, Costinha, Jorge Costa, Ricardo Carvalho, Pedro Mendes, Deco (Pedro Emanuel), Carlos Alberto (Alenichev), Derlei (McCarthy), Maniche
Scorers: Carlos Alberto, Deco, Alenichev
Monaco: Roma, Ibarra, Evra, Zikos, Givet (Squillaci), Rodriguez, Cisse (Nonda), Bernardi, Giuly (Prso), Morientes, Rothen
You can find details of all the results, dates and scorers on the RSSSF website here.