Each club progressed through the group stage and three knockout rounds to reach the final, playing 12 matches in total.
Arsenal won their group to move into the knockout stage, and progressed without conceding a goal against Real Madrid, Juventus and Villarreal, respectively.
[9] UEFA awarded the right to host the final to the Stade de France in Saint-Denis after considering its merits in terms of capacity, stadium infrastructure and dossiers including city and airport agreements and promotional plans.
Barcelona showed the match live from their Mini Estadi on a 70-metre (230 ft) television screen for an estimated audience of 15,276.
Before the final, an estimated 1.2 million people descended into the streets of Barcelona, as the team toured the city on two open-top double-decker buses to celebrate winning La Liga.
On the morning of the final it emerged that the assistant referee for the game Ole Hermann Borgan had posed for photographs in a Barcelona shirt for Drammens Tidende, a Norwegian newspaper.
After initially sticking by the official, UEFA eventually decided to replace him with fellow Norwegian Arild Sundet.
[13] Barcelona were expected to line up in a 4–2–3–1 formation, with Ronaldinho, Ludovic Giuly and Deco supporting Samuel Eto'o who would be deployed as the lone striker.
[15] Ultimately, Barcelona fielded a 4–3–3 formation with Mark van Bommel and Edmílson lining up in midfield alongside Deco, ahead of Xavi and Andrés Iniesta.
Arsenal fielded a 4–4–1–1 formation, which saw Emmanuel Eboué replace the injured Lauren, and Ashley Cole return at left-back to make only his third appearance in the competition that season due to injury.
The next attack in the seventh minute resulted in Arsenal goalkeeper Jens Lehmann saving from Ludovic Giuly after he shot from a narrow angle.
With 18 minutes played, Lehmann became the first player to be sent off in a European Cup final after he brought down Samuel Eto'o outside the Arsenal box.
Following Lehmann's dismissal Barcelona exerted more pressure on Arsenal, to the point where Emmanuel Eboué was cautioned for a high tackle.
[16] In the 37th minute Arsenal overcame their numerical disadvantage to score when Sol Campbell headed in from a Thierry Henry free-kick following Carles Puyol's foul on Emmanuel Eboué.
[18] Next, Iniesta sent a pass through the inside-left channel to Larsson whose one-touch, right-footed lay-off quickly released Eto'o to equalise for Barcelona.
[16] Four minutes later, Larsson was again the provider, playing a one-two with Belletti in the inside-right channel, before the Brazilian full-back shot right-footed through Almunia's legs to score at the near post.
[18] The remaining minutes saw Arsenal replace Hleb with Reyes in an attempt to equalise, but Barcelona had the best chance during this period, only for Giuly to hit his shot straight at Almunia.
Receiving a bye in the first round, they beat Club América 4–0 in the semi-finals to progress to the final where they faced Copa Libertadores champions Internacional, who won 1–0.
Football pundit Mark Lawrenson stated: "The game changed when Arsenal goalkeeper Jens Lehmann was sent off".
[26] Arsenal manager Arsène Wenger agreed: "When Jens Lehmann got sent off, that left us with 70 minutes to play with ten against eleven, against a team that retains the ball very well".
Arsène Wenger was asked post match if Henry would leave, to which the Arsenal manager replied: "I don't know.
"[33] Larsson's addition giving Barcelona the cutting edge required to overcome Arsenal was noted by international press.
[32][33][34][35] Henrik Larsson, who provided the two assists for the goals, was delighted with the triumph and had no regrets over deciding to leave Barcelona after the match: "I want to play football.