NAME | WINNER | RUNNER UP | |
Germany
| 3 | 3 | |
Spain
| 3 | 1 | |
Italy
| 2 | 2 | |
France
| 2 | 1 | |
Soviet Union
| 1 | 3 | |
Portugal
| 1 | 1 | |
Czech Republic
| 1 | 1 | |
Netherlands
| 1 | 0 | |
Denmark
| 1 | 0 | |
Greece
| 1 | 0 | |
Yugoslavia
| 0 | 2 | |
Belgium
| 0 | 1 | |
England
| 0 | 1 |
YEAR | WINNER | RUNNER UP | RESULT | THIRD |
2020 | Italy | England | 1-1 (a.s.d.e.t.) | Denmark / Spain |
2016 | Portugal | France | 1-0 (a.e.t.) | Germany and Wales |
2012 | Spain | Italy | 4-0 | Germany and Portugal |
2008 | Spain | Germany | 1-0 | Russia and Turkey |
2004 | Greece | Portugal | 1-0 | Czech Republic and Netherlands |
2000 | France | Italy | 2-1 (a.s.d.e.t.) | Netherlands and Portugal |
1996 | Germany | Czech Republic | 2-1 (a.s.d.e.t.) | England and France |
1992 | Denmark | Germany | 2-0 | Netherlands and Sweden |
1988 | Netherlands | Soviet Union | 2-0 | Italy and West Germany |
1984 | France | Spain | 2-0 | Denmark and Portugal |
1980 | West Germany | Belgium | 2-1 | Czechoslovakia |
1976 | Czechoslovakia | West Germany | 2-2 (a.e.t.) (5-3 p) | Netherlands |
1972 | West Germany | Soviet Union | 3-0 | Belgium |
1968 | Italy | Yugoslavia | 1-1 (a.e.t.) 2-0 (replay) | England |
1964 | Spain | Soviet Union | 2-1 | Hungary |
1960 | Soviet Union | Yugoslavia | 2-1 (a.e.t.) | Czechoslovakia |