Luxembourg Cup

{{Use dmy dates|date=February 2023}}

{{for|the women's cup|Luxembourg Women's Cup}}

{{Infobox football tournament

| name = Luxembourg Cup

| logo =

| caption =

| founded = {{Start date|1921|df=y}}

| abolished =

| region = {{flagicon|LUX}} Luxembourg

| number of teams = 100

| current champions = Differdange
(6th title)

| most successful club = Red Boys Differdange
(15 titles)

| broadcasters =

| qualifier for = UEFA Europa Conference League

| website =

| current = 2024–25 Luxembourg Cup

}}

The Luxembourg Cup ({{Langx|fr|Coupe de Luxembourg}}) is the national knockout cup competition in Luxembourgian football. It was first held in 1922,{{cite web|url=https://www.uefa.com/nationalassociations/LUX/|title=Developing football in Luxembourg|publisher=UEFA|access-date=24 October 2024}} and has been held annually since, with the exception of the four seasons during the German occupation during Second World War, though the 2019–20 and 2020–21 seasons were unable to be completed due to the COVID-19 pandemic. The Stade de Luxembourg hosts the final of the tournament.

Winners

{{sticky-header}}

class="wikitable sticky-header" style="text-align:center"

!width=80 | Year

!width=220| Winner

!width=180| Score

!width=220| Runner-up

1921–22

| align=left | Racing Club Luxembourg

| 2–0

| align=left | Jeunesse Esch

1922–23

| align=left | Fola Esch

| 3–0

| align=left | Union Luxembourg

1923–24

| align=left | Fola Esch

| 2–0

| align=left | Red Boys Differdange

1924–25

| align=left | Red Boys Differdange

| 1–1 aet 3–0 (R)

| align=left | Spora Luxembourg

1925–26

| align=left | Red Boys Differdange

| 5–2

| align=left | Union Luxembourg

1926–27

| align=left | Red Boys Differdange

| 3–2

| align=left | Jeunesse Esch

1927–28

| align=left | Spora Luxembourg

| 2–2 aet 3–3 aet (R) 5–2 (R)

| align=left | Stade Dudelange

1928–29

| align=left | Red Boys Differdange

| 5–3

| align=left | Spora Luxembourg

1929–30

| align=left | Red Boys Differdange

| 2–1

| align=left | Spora Luxembourg

1930–31

| align=left | Red Boys Differdange

| 5–3

| align=left | Spora Luxembourg

1931–32

| align=left | Spora Luxembourg

| 2–1

| align=left | Red Boys Differdange

1932–33

| align=left | Progrès Niedercorn

| 4–1

| align=left | Union Luxembourg

1933–34

| align=left | Red Boys Differdange

| 5–2

| align=left | Spora Luxembourg

1934–35

| align=left | Jeunesse Esch

| 4–2

| align=left | Red Boys Differdange

1935–36

| align=left | Red Boys Differdange

| 2–0

| align=left | Stade Dudelange

1936–37

| align=left | Jeunesse Esch

| 3–0

| align=left | Union Luxembourg

1937–38

| align=left | Stade Dudelange

| 1–0

| align=left | National Schifflange

1938–39

| align=left | US Dudelange

| 2–1

| align=left | Stade Dudelange

1939–40

| align=left | Spora Luxembourg

| 6–2

| align=left | Stade Dudelange

1940–1944

| colspan=3 | Not Held due to World War II

1944–45

| align=left | Progrès Niedercorn

| 2–0

| align=left | Spora Luxembourg

1945–46

| align=left | Jeunesse Esch

| 3–1

| align=left | Progrès Niedercorn

1946–47

| align=left | Union Luxembourg

| 2–1

| align=left | Stade Dudelange

1947–48

| align=left | Stade Dudelange

| 1–0

| align=left | Red Boys Differdange

1948–49

| align=left | Stade Dudelange

| 1–0

| align=left | Racing Rodange

1949–50

| align=left | Spora Luxembourg

| 5–1

| align=left | Red Boys Differdange

1950–51

| align=left | SC Tétange

| 1–1 aet 2–0 (R)

| align=left | CS Grevenmacher

1951–52

| align=left | Red Boys Differdange

| 1–0

| align=left | Red Star Merl

1952–53

| align=left | Red Boys Differdange

| 2–1

| align=left | CS Grevenmacher

1953–54

| align=left | Jeunesse Esch

| 5–0

| align=left | CS Grevenmacher

1954–55

| align=left | Fola Esch

| 1–1 aet 4–1 (R)

| align=left | Red Boys Differdange

1955–56

| align=left | Stade Dudelange

| 3–1

| align=left | Progrès Niedercorn

1956–57

| align=left | Spora Luxembourg

| 2–1

| align=left | Stade Dudelange

1957–58

| align=left | Red Boys Differdange

| 2–1

| align=left | US Dudelange

1958–59

| align=left | Union Luxembourg

| 3–1

| align=left | CS Grevenmacher

1959–60

| align=left | National Schifflange

| 3–0

| align=left | Stade Dudelange

1960–61

| align=left | Alliance Dudelange

| 3–2

| align=left | Union Luxembourg

1961–62

| align=left | Alliance Dudelange

| 1–0

| align=left | Union Luxembourg

1962–63

| align=left | Union Luxembourg

| 2–1

| align=left | Spora Luxembourg

1963–64

| align=left | Union Luxembourg

| 1–0

| align=left | Aris Bonnevoie

1964–65

| align=left | Spora Luxembourg

| 1–0

| align=left | Jeunesse Esch

1965–66

| align=left | Spora Luxembourg

| 2–0

| align=left | Jeunesse Esch

1966–67

| align=left | Aris Bonnevoie

| 1–0

| align=left | Union Luxembourg

1967–68

| align=left | US Rumelange

| 0–0 aet 1–0 (R)

| align=left | Aris Bonnevoie

1968–69

| align=left | Union Luxembourg

| 5–2

| align=left | Alliance Dudelange

1969–70

| align=left | Union Luxembourg

| 1–0

| align=left | Red Boys Differdange

1970–71

| align=left | Jeunesse Hautcharage

| 4–1

| align=left | Jeunesse Esch

1971–72

| align=left | Red Boys Differdange

| 4–3

| align=left | Aris Bonnevoie

1972–73

| align=left | Jeunesse Esch

| 3–2

| align=left | Fola Esch

1973–74

| align=left | Jeunesse Esch

| 4–1

| align=left | Avenir Beggen

1974–75

| align=left | US Rumelange

| 2–0

| align=left | Jeunesse Esch

1975–76

| align=left | Jeunesse Esch

| 2–1

| align=left | Aris Bonnevoie

1976–77

| align=left | Progrès Niedercorn

| 4–4 aet 3–1 (R)

| align=left | Red Boys Differdange

1977–78

| align=left | Progrès Niedercorn

| 2–1

| align=left | Union Luxembourg

1978–79

| align=left | Red Boys Differdange

| 4–1

| align=left | Aris Bonnevoie

1979–80

| align=left | Spora Luxembourg

| 3–2

| align=left | Progrès Niedercorn

1980–81

| align=left | Jeunesse Esch

| 5–0

| align=left | Olympique Eischen

1981–82

| align=left | Red Boys Differdange

| 2–1

| align=left | US Rumelange

1982–83

| align=left | Avenir Beggen

| 4–2

| align=left | Union Luxembourg

1983–84

| align=left | Avenir Beggen

| 4–1

| align=left | Union Luxembourg

1984–85

| align=left | Red Boys Differdange

| 1–0

| align=left | Jeunesse Esch

1985–86

| align=left | Union Luxembourg

| 4–1

| align=left | Red Boys Differdange

1986–87

| align=left | Avenir Beggen

| 6–0

| align=left | Spora Luxembourg

1987–88

| align=left | Jeunesse Esch

| 1–0

| align=left | Avenir Beggen

1988–89

| align=left | Union Luxembourg

| 2–0

| align=left | Avenir Beggen

1989–90

| align=left | Swift Hesperange

| 3–3 aet 7–1 (R)

| align=left | AS Differdange

1990–91

| align=left | Union Luxembourg

| 3–0

| align=left | Jeunesse Esch

1991–92

| align=left | Avenir Beggen

| 1–0

| align=left | CS Pétange

1992–93

| align=left | Avenir Beggen

| 5–2

| align=left | F91 Dudelange

1993–94

| align=left | Avenir Beggen

| 3–1

| align=left | F91 Dudelange

1994–95

| align=left | CS Grevenmacher

| 1–1 aet 3–2 (R)

| align=left | Jeunesse Esch

1995–96

| align=left | Union Luxembourg

| 3–1

| align=left | Jeunesse Esch

1996–97

| align=left | Jeunesse Esch

| 2–0

| align=left | Union Luxembourg

1997–98

| align=left | CS Grevenmacher

| 2–0

| align=left | Avenir Beggen

1998–99

| align=left | Jeunesse Esch

| 3–0

| align=left | FC Mondercange

1999–2000

| align=left | Jeunesse Esch

| 4–1

| align=left | FC Mondercange

2000–01

| align=left | Etzella Ettelbruck

| 5–3

| align=left | FC Wiltz 71

2001–02

| align=left | Avenir Beggen

| 1–0

| align=left | F91 Dudelange

2002–03

| align=left | CS Grevenmacher

| 1–0

| align=left | Etzella Ettelbruck

2003–04

| align=left | F91 Dudelange

| 3–1 aet

| align=left | Etzella Ettelbruck

2004–05

| align=left | CS Pétange

| 5–0

| align=left | FC CeBra 01

2005–06

| align=left | F91 Dudelange

| 3–2

| align=left | Jeunesse Esch

2006–07

| align=left | F91 Dudelange

| 2–1

| align=left | UN Käerjeng 97

2007–08

| align=left | CS Grevenmacher

| 4–1

| align=left | Victoria Rosport

2008–09

| align=left | F91 Dudelange

| 5–0

| align=left | UN Käerjeng 97

2009–10

| align=left | FC Differdange 03

| 1–0

| align=left | CS Grevenmacher

2010–11

| align=left | FC Differdange 03

| 1–0

| align=left | F91 Dudelange

2011–12

| align=left | F91 Dudelange

| 4–2 aet

| align=left | Jeunesse Esch

2012–13

| align=left | Jeunesse Esch

| 2–1

| align=left | Differdange 03

2013–14

| align=left | Differdange 03

| 2–0

| align=left | F91 Dudelange

2014–15

| align=left | Differdange 03

| 1–1 aet (3–2 pen.)

| align=left | F91 Dudelange

2015–16

| align=left | F91 Dudelange

| 1–0

| align=left | Mondorf-les-Bains

2016–17

| align=left | F91 Dudelange

| 4–1

| align=left | Fola Esch

2017–18

| align=left | Racing FC

| 0–0 aet (4–3 pen.)

| align=left | Hostert

2018–19

| align=left | F91 Dudelange

| 5–0

| align=left | Etzella Ettelbruck

2019–20

| align=center colspan=3 | abandoned due to COVID-19 pandemic{{cite web|url=http://flf.lu/La-FLF/Actualites/Informations-aux-clubs-de-la-FLF-%E2%80%93-crise-du-CORONA.aspx|title=Informations aux clubs de la FLF – crise du CORONA COVID- 19: Décisions du Conseil d'Administration: compétitions nationales de football (m/f) et de futsal 2019/2020|publisher=Fédération Luxembourgeoise de Football|date=22 April 2020|archive-url=https://web.archive.org/web/20200428060044/http://flf.lu/La-FLF/Actualites/Informations-aux-clubs-de-la-FLF-%E2%80%93-crise-du-CORONA.aspx |archive-date=28 April 2020 |url-status=dead}}

2020–21

| align=center colspan=3 | abandoned due to COVID-19 pandemic

2021–22

| align=left | Racing FC

| 3–2

| align=left | F91 Dudelange

2022–23

| align=left | Differdange 03

| 4–2

| align=left | Marisca Mersch

2023–24

| align=left | Progrès Niederkorn

| 1–1 aet (3–1 pen.)

| align=left | Swift Hesperange

Performances

=Performance by club=

{{sticky-header}}

class="wikitable sortable sticky-header"
width=175| Club

! width=85 | Titles

! width=85 | Runners-up

! Winning Years

FA Red Boys Differdange

| align=center|15

| align=center|9

| 1925, 1926, 1927, 1929, 1930, 1931, 1934, 1936, 1952, 1953, 1958, 1972, 1979, 1982, 1985

Jeunesse Esch

| align=center|13

| align=center|12

| 1935, 1937, 1946, 1954, 1973, 1974, 1976, 1981, 1988, 1997, 1999, 2000, 2013

Union Luxembourg

| align=center|10

| align=center|10

| 1947, 1959, 1963, 1964, 1969, 1970, 1986, 1989, 1991, 1996

CA Spora Luxembourg

| align=center|8

| align=center|8

| 1928, 1932, 1940, 1950, 1957, 1965, 1966, 1980

F91 Dudelange

| align=center|8

| align=center|8

| 2004, 2006, 2007, 2009, 2012, 2016, 2017, 2019

FC Avenir Beggen

| align=center|7

| align=center|4

| 1983, 1984, 1987, 1992, 1993, 1994, 2002

FC Differdange 03

| align=center|6

| align=center|1

| 2010, 2011, 2014, 2015, 2023, 2025

FC Progrès Niedercorn

| align=center|5

| align=center|3

| 1933, 1945, 1977, 1978, 2024

Stade Dudelange

| align=center|4

| align=center|7

| 1938, 1948, 1949, 1956

CS Grevenmacher

| align=center|4

| align=center|5

| 1995, 1998, 2003, 2008

CS Fola Esch

| align=center|3

| align=center|2

| 1923, 1924, 1955

US Rumelange

| align=center|2

| align=center|2

| 1968, 1975

Alliance Dudelange

| align=center|2

| align=center|1

| 1961, 1962

Racing FC Union Luxembourg

| align=center|2

| align=center

2018, 2022
FC Aris Bonnevoie

| align=center|1

| align=center|5

| 1967

FC Etzella Ettelbruck

| align=center|1

| align=center|2

| 2001

CS Pétange

| align=center|1

| align=center|1

| 2005

Swift Hesperange

| align=center|1

| align=center|1

| 1990

National Schifflange

| align=center|1

| align=center|1

| 1960

US Dudelange

| align=center|1

| align=center|1

| 1939

Jeunesse Hautcharage

| align=center|1

| align=center

1971
Racing Club Luxembourg

| align=center|1

| align=center

1922
SC Tétange

| align=center|1

| align=center

1951
FC Mondercange

| align=center

align=center|2

|

Racing Rodange

| align=center

align=center|1

|

FC CeBra 01

| align=center

align=center|1

|

AS Differdange

| align=center

align=center|1

|

Olympique Eischen

| align=center

align=center|1

|

Red Star Merl

| align=center

align=center|1

|

UN Käerjeng 97

| align=center

align=center|1

|

FC Wiltz 71

| align=center

align=center|1

|

FC Victoria Rosport

| align=center

align=center|1

|

Mondorf-les-Bains

| align=center

align=center|1

|

Hostert

| align=center

align=center|1

|

Marisca Mersch

| align=center

align=center|1

|

  • {{small|Teams in italic were dissolved or merged to form a new club.}}

=Performance by town=

{{sticky-header}}

class="wikitable sortable sticky-header"
width=175| Town

! width=85 | Titles

! width=85 | Runners-up

! Teams

Luxembourg City

| align=center|28

| align=center|28

| 8: Union Luxembourg, CA Spora Luxembourg, FC Avenir Beggen, FC Aris Bonnevoie, Racing Club Luxembourg, Racing FC Union Luxembourg, FC CeBra 01, Red Star Merl

Differdange

| align=center|20

| align=center|11

| 3: FA Red Boys Differdange, FC Differdange 03, AS Differdange

Esch-sur-Alzette

| align=center|16

| align=center|14

| 2: Jeunesse Esch, CS Fola Esch

Dudelange

| align=center|15

| align=center|15

| 4: F91 Dudelange, Stade Dudelange, Alliance Dudelange, US Dudelange

Grevenmacher

| align=center|4

| align=center|5

| 1: CS Grevenmacher

Niederkorn

| align=center|4

| align=center|3

| 1: FC Progrès Niederkorn

Rumelange

| align=center|2

| align=center|2

| 1: US Rumelange

Ettelbruck

| align=center|1

| align=center|3

| 1: FC Etzella Ettelbruck

Pétange

| align=center|1

| align=center|1

| 1: CS Pétange

Schifflange

| align=center|1

| align=center|1

| 1: National Schifflange

Hautcharage

| align=center|1

| align=center

1: Jeunesse Hautcharage
Hesperange

| align=center|1

| align=center

1: Swift Hesperange
Tétange

| align=center|1

| align=center

1: SC Tétange
Mondercange

| align=center

align=center|2

| 1: FC Mondercange

Bascharage

| align=center

align=center|1

| 1: UN Käerjeng 97

Eischen

| align=center

align=center|1

| 1: Olympique Eischen

Rodange

| align=center

align=center|1

| 1: Racing Rodange

Rosport

| align=center

align=center|1

| 1: FC Victoria Rosport

Wiltz

| align=center

align=center|1

| 1: FC Wiltz 71

Mondorf-les-Bains

| align=center

align=center|1

| 1: US Mondorf-les-Bains

Hostert

| align=center

align=center|1

| 1: US Hostert

=Performance by canton=

class="wikitable sortable"
width=175| Canton

! width=85 | Titles

! width=85 | Runners-up

! Towns

Esch-sur-Alzette

| align=center|59

| align=center|50

| 10: Differdange, Dudelange, Esch-sur-Alzette, Mondercange, Niederkorn, Pétange, Rodange, Rumelange, Schifflange, Tétange

Luxembourg

| align=center|29

| align=center|29

| 3: Hesperange, Hostert, Luxembourg City

Grevenmacher

| align=center|4

| align=center|5

| 1: Grevenmacher

Capellen

| align=center|1

| align=center|2

| 2: Bascharage, Eischen, Hautcharage

Diekirch

| align=center|1

| align=center|3

| 1: Ettelbruck

Echternach

| align=center

align=center|1

| 1: Rosport

Wiltz

| align=center

align=center|1

| 1: Wiltz

Remich

| align=center

align=center|1

| 1: Mondorf-les-Bains

References

{{Reflist}}