# 1998–99 UEFA Cup

The 1998–99 UEFA Cup was won by Parma in the final against Marseille. It was their second title in the competition.
It was the last edition of the old format UEFA Cup, before the Cup Winners' Cup was merged into it to include domestic cup winners, and an extra knockout round was added. The new format was last played in the 2003–04 season and was later replaced by a Group Stage format in 2004–05.

## Teams

The labels in the parentheses show how each team qualified for the place of its starting round:
* TH: Title holders
* LC: League Cup winners
* Nth: League position
* IC: Intertoto Cup winners
* FP: Fair play
* CL Q2: Losers from the Champions League second qualifying round
First round :
| Udinese (3rd) | Lyon (6th) | Sporting CP (4th) | Anorthosis Famagusta (CL Q2) |
| Roma (4th) | Bayer Leverkusen (3rd) | Marítimo (5th) | Celtic (CL Q2) |
| Fiorentina (5th) | Stuttgart (4th) | Metz (CL Q2) | Beitar Jerusalem (CL Q2) |
| Parma (6th) | Schalke 04 (5th) | Sparta Prague (CL Q2) | Maribor (CL Q2) |
| Real Sociedad (3rd) | Vitesse (3rd) | Grasshopper (CL Q2) | Skonto (CL Q2) |
| Celta de Vigo (6th) | Feyenoord (4th) | ŁKS Łódź (CL Q2) | Litex Lovech (CL Q2) |
| Atlético Madrid (7th) | Willem II (5th) | Újpest (CL Q2) | Obilić (CL Q2) |
| Real Betis (8th) | Liverpool (3rd) | Club Brugge (CL Q2) | Bologna (IC) |
| Monaco (3rd) | Leeds United (5th) | Košice (CL Q2) | Werder Bremen (IC) |
| Marseille (4th) | Blackburn Rovers (6th) | Steaua București (CL Q2) | Valencia (IC) |
| Bordeaux (5th) | Vitória Guimarães (3rd) | Dinamo Tbilisi (CL Q2) | Aston Villa (FP) |
| Second qualifying round ||||
| Fenerbahçe (2nd) | Slavia Prague (2nd) | GAK (3rd) | Silkeborg (2nd) |
| Trabzonspor (3rd) | Sigma Olomouc (3rd) | Rotor Volgograd (2nd) | Vejle (4th) |
| İstanbulspor (4th) | Brann (2nd) | Dynamo Moscow (3rd) | Servette (2nd) |
| AEK Athens (3rd) | Strømsgodset (3rd) | Hajduk Split (2nd) | Zürich (4th) |
| PAOK (4th) | Rapid Wien (2nd) | Osijek (3rd) | Molde (FP) |
| First qualifying round ||||
| Polonia Warsaw (2nd) | Shakhtar Donetsk (2nd) | Daugava Riga (2nd) | Newtown (2nd) |
| Wisła Kraków (3rd) | Ferencváros (2nd) | CSKA Sofia (3rd) | Shelbourne (2nd) |
| Germinal Beerschot (3rd) | Inter Bratislava (3rd) | Sloga Jugomagnat (2nd) | HB Tórshavn (2nd) |
| Anderlecht (4th) | Kolkheti-1913 Poti (3rd) | Žalgiris Vilnius (2nd) | Tirana (2nd) |
| Argeș Pitești (3rd) | Omonia (2nd) | Red Star Belgrade (2nd) | Union Luxembourg (2nd) |
| Oțelul Galați (4th) | Hapoel Tel Aviv (2nd) | Tiligul Tiraspol (2nd) | Dinamo Baku (2nd) |
| Göteborg (2nd) | Mura (2nd) | Tallinna Sadam (2nd) | Principat (1st) |
| Malmö (3rd) | Belshina Bobruisk (2nd) | Shirak (2nd) | Željezničar Sarajevo (1st) |
| Rangers (2nd) | ÍA Akranes (2nd) | Linfield (2nd) | Sarajevo (2nd) |
| Kilmarnock (4th) | VPS (2nd) | Birkirkara (2nd) | FinnPa (FP) |

## First qualifying round

| Team 1 | Agg.Tooltip Aggregate score | Team 2 | 1st leg | 2nd leg |
| Argeş Piteşti | 7–1 | Dynamo Baku | 5–1 | 2–0 |
| Belshina Bobruisk | 1–3 | CSKA Sofia | 0–0 | 1–3 |
| Omonia | 8–6 | Linfield | 5–1 | 3–5 |
| Shakhtar Donetsk | 6–1 | Birkirkara | 2–1 | 4–0 |
| Kolkheti Poti | 0–11 | Red Star Belgrade | 0–4 | 0–7 |
| Inter Bratislava | 4–0 | SK Tirana | 2–0 | 2–0 |
| Tallinna Sadam | 1–5 | Polonia Warsaw | 0–2 | 1–3 |
| HB Tórshavn | 2–4 | VPS | 2–0 | 0–4 |
| Željezničar | 1–2 | Kilmarnock | 1–1 | 0–1 |
| Mura | 8–2 | Daugava Riga | 6–1 | 2–1 |
| ÍA | 3–3 (a) | Žalgiris Vilnius | 3–2 | 0–1 |
| Hapoel Tel Aviv | 6–2 | FinnPa | 3–1 | 3–1 |
| Shirak | 0–7 | Malmö FF | 0–2 | 0–5 |
| Germinal Ekeren | 4–1 | Sarajevo | 4–1 | 0–0 |
| Shelbourne | 3–7 | Rangers | 3–5 | 0–2 |
| Oţelul Galaţi | 4–1 | Sloga Jugomagnat | 3–0 | 1–1 |
| Union Luxembourg | 0–7 | IFK Göteborg | 0–3 | 0–4 |
| Ferencváros | 14–1 | Principat | 6–0 | 8–1 |
| Tiligul Tiraspol | 0–6 | Anderlecht | 0–1 | 0–5 |
| Newtown | 0–7 | Wisła Kraków | 0–0 | 0–7 |

### Second leg

Argeş Piteşti won 7–1 on aggregate.
Inter Bratislava won 4–0 on aggregate.
Polonia Warsaw won 5–1 on aggregate.
3–3 on aggregate; Zalgiris Vilnius won on away goals.
Wisła Kraków won 7–0 on aggregate.
CSKA Sofia won 3–1 on aggregate.
Hapoel Tel Aviv won 6–2 on aggregate.
Shakhtar Donetsk won 6–1 on aggregate.
Mura won 8–2 on aggregate.
VPS won 4–2 on aggregate.
Malmö won 7–0 on aggregate.
IFK Göteborg won 7–0 on aggregate.
Red Star Belgrade won 11–0 on aggregate.
Germinal Ekeren won 4–1 on aggregate.
Oţelul Galaţi won 4–1 on aggregate.
Anderlecht won 6–0 on aggregate.
Omonia won 8–6 on aggregate.
Kilmarnock won 2–1 on aggregate.
Rangers won 7–3 on aggregate.
Ferencváros won 14–1 on aggregate.

## Second qualifying round

| Team 1 | Agg.Tooltip Aggregate score | Team 2 | 1st leg | 2nd leg |
| Red Star Belgrade | 4–2 | Rotor Volgograd | 2–1 | 2–1 |
| Ferencváros | 4–6 | AEK Athens | 4–2 | 0–4 |
| Germinal Ekeren | 3–5 | Servette | 1–4 | 2–1 |
| Argeş Piteşti | 4–4 (a) | İstanbulspor | 2–0 | 2–4 |
| Molde | 0–2 | CSKA Sofia | 0–0 | 0–2 |
| IFK Göteborg | 2–2 (a) | Fenerbahçe | 2–1 | 0–1 |
| Mura | 0–2 | Silkeborg | 0–0 | 0–2 |
| Rangers | 2–0 | PAOK | 2–0 | 0–0 |
| Slavia Prague | 4–2 | Inter Bratislava | 4–0 | 0–2 |
| Zürich | 6–3 | Shakhtar Donetsk | 4–0 | 2–3 |
| Brann | 1–0 | Zalgiris Vilnius | 1–0 | 0–0 |
| Wisła Kraków | 7–2 | Trabzonspor | 5–1 | 2–1 |
| Vejle | 6–0 | Oţelul Galaţi | 3–0 | 3–0 |
| Hapoel Tel Aviv | 1–1 (2–4 p) | Strømsgodset | 1–0 | 0–1 (aet) |
| Osijek | 3–3 (a) | Anderlecht | 3–1 | 0–2 |
| Omonia | 3–3 (a) | Rapid Wien | 3–1 | 0–2 |
| VPS | 0–3 | GAK | 0–0 | 0–3 |
| Polonia Warsaw | 0–2 | Dynamo Moscow | 0–1 | 0–1 |
| Hajduk Split | 3–2 | Malmö | 1–1 | 2–1 |
| Sigma Olomouc | 4–0 | Kilmarnock | 2–0 | 2–0 |

### Second leg

Brann won 1–0 on aggregate.
Vejle won 6–0 on aggregate.
CSKA Sofia won 2–0 on aggregate.
Dynamo Moscow won 2–0 on aggregate.
Red Star Belgrade won 4–2 on aggregate.
Zürich won 6–3 on aggregate.
3–3 on aggregate; Rapid Wien won on away goals.
Silkeborg won 2–0 on aggregate.
Slavia Prague won 4–2 on aggregate.
Hajduk Split won 3–2 on aggregate.
1–1 on aggregate; Strømsgodset won 4–2 on penalties.
2–2 on aggregate; Fenerbahçe won on away goals.
Wisła Kraków won 7–2 on aggregate.
AEK Athens won 6–4 on aggregate.
Servette won 5–3 on aggregate.
3–3 on aggregate; Anderlecht won on away goals.
Rangers won 2–0 on aggregate.
GAK won 3–0 on aggregate.
Sigma Olomouc won 4–0 on aggregate.
4–4 on aggregate; Argeş Piteşti won on away goals.

## First round

| Team 1 | Agg.Tooltip Aggregate score | Team 2 | 1st leg | 2nd leg |
| Sparta Prague | 2–5 | Real Sociedad | 2–4 | 0–1 |
| Fenerbahçe | 2–3 | Parma | 1–0 | 1–3 |
| Blackburn Rovers | 2–3 | Lyon | 0–1 | 2–2 |
| Dynamo Moscow | 5–4 | Skonto | 2–2 | 3–2 |
| Vitória de Guimarães | 2–4 | Celtic | 1–2 | 1–2 |
| Stuttgart | 4–3 | Feyenoord | 1–3 | 3–0 |
| Argeş Piteşti | 0–8 | Celta Vigo | 0–1 | 0–7 |
| Silkeborg | 0–3 | Roma | 0–2 | 0–1 |
| LKS Łódź | 1–3 | Monaco | 1–3 | 0–0 |
| Litex Lovech | 1–3 | GAK | 1–1 | 0–2 |
| Anderlecht | 0–2 | Grasshoppers | 0–2 | 0–0 |
| Fiorentina | 2–1 | Hajduk Split | 2–1 | 0–0 |
| Aston Villa | 6–2 | Strømsgodset | 3–2 | 3–0 |
| Schalke 04 | 1–1 (4–5 p) | Slavia Prague | 1–0 | 0–1 (aet) |
| Servette | 2–2 (a) | CSKA Sofia | 2–1 | 0–1 |
| Red Star Belgrade | 3–3 (4–3 p) | Metz | 2–1 | 1–2 (aet) |
| Košice | 0–8 | Liverpool | 0–3 | 0–5 |
| Sporting CP | 1–4 | Bologna | 0–2 | 1–2 |
| Maribor | 0–5 | Wisła Kraków | 0–2 | 0–3 |
| Vejle | 1–5 | Real Betis | 1–0 | 0–5 |
| Bordeaux | 3–2 | Rapid Wien | 1–1 | 2–1 |
| Atlético Madrid | 3–0 | Obilić | 2–0 | 1–0 |
| Beitar Jerusalem | 3–5 | Rangers | 1–1 | 2–4 |
| Leeds United | 1–1 (4–1 p) | Marítimo | 1–0 | 0–1 (aet) |
| Udinese | 1–2 | Bayer Leverkusen | 1–1 | 0–1 |
| Steaua Bucharest | 3–7 | Valencia | 3–4 | 0–3 |
| Willem II | 6–0 | Dinamo Tbilisi | 3–0 | 3–0 |
| Zürich | 7–2 | Anorthosis Famagusta | 4–0 | 3–2 |
| Újpest | 2–7 | Club Brugge | 0–5 | 2–2 |
| Vitesse Arnhem | 6–3 | AEK Athens | 3–0 | 3–3 |
| Brann | 2–4 | Werder Bremen | 2–0 | 0–4 (aet) |
| Sigma Olomouc | 2–6 | Marseille | 2–2 | 0–4 |
* $^1$ The first leg of the Fiorentina vs. Hajduk Split tie was played at the Stadio San Nicola in Bari instead of Fiorentina's home ground in Florence due to the club serving a stadium ban over an incident during their 1996–97 Cup Winners' Cup semifinal second leg match against Barcelona on 24 April 1997. The incident saw Barcelona player Iván de la Peña requiring medical assistance after getting hit with an object thrown from the stands as Fiorentina fans pelted the pitch with missiles following Barcelona's second goal in the 35th minute of the match. Part of the punishment for Fiorentina was being required to play their next two European home matches at least 300 km away from their home stadium. Since Fiorentina failed to qualify for European competition in the 1997–98 season, the punishment was enacted during their 1998–99 UEFA Cup campaign.
* $^2$ The return leg of the Atlético Madrid vs. Obilić tie was played at the Partizan Stadium in Belgrade due to Obilić's home ground not meeting UEFA standards for European competition.

### Second leg

Wisła Kraków won 5–0 on aggregate.
1–1 on aggregate; Slavia Prague won 5–4 on penalties.
Bologna won 4–1 on aggregate.
Willem II won 6–0 on aggregate.
2–2 on aggregate; CSKA Sofia won on away goals.
Dynamo Moscow won 5–4 on aggregate.
Fiorentina won 2–1 on aggregate.
Aston Villa won 6–2 on aggregate.
GAK won 3–1 on aggregate.
3–3 on aggregate; Red Star Belgrade won 4–3 on penalties.
Werder Bremen won 4–2 on aggregate.
Zürich won 7–2 on aggregate.
Marseille won 6–2 on aggregate.
Real Sociedad won 5–2 on aggregate.
Stuttgart won 4–3 on aggregate.
Vitesse won 6–3 on aggregate.
Monaco won 3–1 on aggregate.
Grasshoppers won 2–0 on aggregate.
Club Brugge won 7–2 on aggregate.
Bordeaux won 3–2 on aggregate.
Atlético Madrid won 3–0 on aggregate.
Parma won 3–2 on aggregate.
Celtic won 4–2 on aggregate.
Roma won 3–0 on aggregate.
Liverpool won 8–0 on aggregate.
Bayer Leverkusen won 2–1 on aggregate.
Lyon won 3–2 on aggregate.
Celta de Vigo won 8–0 on aggregate.
Real Betis won 5–1 on aggregate.
Valencia won 7–3 on aggregate.
1–1 on aggregate; Leeds United won 4–1 on penalties.
Rangers won 5–3 on aggregate.

## Second round

| Team 1 | Agg.Tooltip Aggregate score | Team 2 | 1st leg | 2nd leg |
| Dynamo Moscow | 2–6 | Real Sociedad | 2–3 | 0–3 |
| CSKA Sofia | 2–5 | Atlético Madrid | 2–4 | 0–1 |
| Roma | 1–0 | Leeds United | 1–0 | 0–0 |
| Celtic | 3–5 | Zürich | 1–1 | 2–4 |
| Grasshopper | 3–2 | Fiorentina | 0–2 | 3–0 |
| Vitesse | 1–3 | Bordeaux | 0–1 | 1–2 |
| Bayer Leverkusen | 2–3 | Rangers | 1–2 | 1–1 |
| Wisła Kraków | 2–3 | Parma | 1–1 | 1–2 |
| GAK | 3–7 | Monaco | 3–3 | 0–4 |
| Werder Bremen | 3–4 | Marseille | 1–1 | 2–3 |
| Celta Vigo | 3–2 | Aston Villa | 0–1 | 3–1 |
| Liverpool | 2–2 (a) | Valencia | 0–0 | 2–2 |
| Bologna | 4–1 | Slavia Prague | 2–1 | 2–0 |
| Willem II | 1–4 | Real Betis | 1–1 | 0–3 |
| Red Star Belgrade | 3–5 | Lyon | 1–2 | 2–3 |
| Stuttgart | 3–4 | Club Brugge | 1–1 | 2–3 (aet) |
* $^1$ The return leg of the Grasshopper vs. Fiorentina tie was played at the Arechi Stadium in Salerno instead of Fiorentina's home ground in Florence due to the club serving a stadium ban over an incident during their 1996–97 Cup Winners' Cup semifinal second leg match against Barcelona on 24 April 1997. The incident saw Barcelona player Iván de la Peña requiring medical assistance after getting hit with an object thrown from the stands as Fiorentina fans pelted the pitch with missiles following Barcelona's second goal in the 35th minute of the match. Part of the punishment for Fiorentina was being required to play their next two European home matches at least 300 km away from their home stadium. Since Fiorentina failed to qualify for European competition in the 1997–98 season, the punishment was enacted during their 1998–99 UEFA Cup campaign.

### Second leg

Bologna won 4–1 on aggregate.
Bordeaux won 3–1 on aggregate.
Parma won 3–2 on aggregate.
Club Brugge won 4–3 on aggregate.
Monaco won 7–3 on aggregate.
Real Sociedad won 6–2 on aggregate.
Zürich won 5–3 on aggregate.
Lyon won 5–3 on aggregate.
The match was abandoned at half-time after the fourth official, Philippe Flament of Belgium, sustained a knee injury and bruising from a firecracker thrown onto the pitch by fans in the stands. At the moment of the incident, Fiorentina led 2–1 on the night and 4-1 on aggregate. Four days later at a UEFA emergency meeting, Fiorentina was kicked out of the UEFA Cup and the match was recorded as a 0–3 Grasshopper win. Future expulsion from European competition for Fiorentina was also considered by UEFA but eventually ruled out because of mitigating circumstances, specifically that the match, as part of an earlier punishment, was not played at Fiorentina's home stadium but in Salerno and credible evidence that the firecracker was likely thrown by fans of the local club Salernitana holding a grudge following a recent Serie A fixture between the two clubs. Grasshopper won 3–2 on aggregate.
Celta de Vigo won 3–2 on aggregate.
Marseille won 4–3 on aggregate.
Roma won 1–0 on aggregate.
Atlético Madrid won 5–2 on aggregate.
2–2 on aggregate; Liverpool won on away goals.
Real Betis won 4–1 on aggregate.
Rangers won 3–2 on aggregate.

## Third round

| Team 1 | Agg.Tooltip Aggregate score | Team 2 | 1st leg | 2nd leg |
| Real Sociedad | 3–5 | Atlético Madrid | 2–1 | 1–4 (aet) |
| Roma | 3–2 | Zürich | 1–0 | 2–2 |
| Grasshopper | 3–3 (a) | Bordeaux | 3–3 | 0–0 |
| Rangers | 2–4 | Parma | 1–1 | 1–3 |
| Monaco | 2–3 | Marseille | 2–2 | 0–1 |
| Celta Vigo | 4–1 | Liverpool | 3–1 | 1–0 |
| Bologna | 4–2 | Real Betis | 4–1 | 0–1 |
| Lyon | 5–3 | Club Brugge | 1–0 | 4–3 |

### Second leg

Parma won 4–2 on aggregate.
Bologna won 4–2 on aggregate.
Lyon won 5–3 on aggregate.
3–3 on aggregate; Bordeaux won on away goals.
Roma won 3–2 on aggregate.
Celta de Vigo won 4–1 on aggregate.
Marseille won 3–2 on aggregate.
Atlético Madrid won 5–3 on aggregate.

## Quarter-finals

| Team 1 | Agg.Tooltip Aggregate score | Team 2 | 1st leg | 2nd leg |
| Atlético Madrid | 4–2 | Roma | 2–1 | 2–1 |
| Bordeaux | 2–7 | Parma | 2–1 | 0–6 |
| Marseille | 2–1 | Celta Vigo | 2–1 | 0–0 |
| Bologna | 3–2 | Lyon | 3–0 | 0–2 |

### Second leg

Parma won 7–2 on aggregate.
Bologna won 3–2 on aggregate.
Atlético Madrid won 4–2 on aggregate.
Marseille won 2–1 on aggregate.

## Semi-finals

| Team 1 | Agg.Tooltip Aggregate score | Team 2 | 1st leg | 2nd leg |
| Atlético Madrid | 2–5 | Parma | 1–3 | 1–2 |
| Marseille | 1–1 (a) | Bologna | 0–0 | 1–1 |

### Second leg

1–1 on aggregate; Marseille won on away goals.
Parma won 5–2 on aggregate.