# 2018 European Men's Handball Championship

The 2018 EHF European Men's Handball Championship was the 14th edition of the tournament, hosted for the second time in Croatia from 12 to 28 January 2018. Croatia was awarded hosting the tournament during the EHF congress in Dublin on 20 September 2014. This was the last edition to feature 16 teams, with the 2020 edition expanding to 24 teams and six preliminary groups format.
Spain won their first title after defeating Sweden 29–23 in the final. France captured the bronze medal after defeating Denmark 32–29.

## Bidding process

The interested nations were as follows:
* Croatia
* Norway
* Sweden
In December 2013, these were announced as the bids:
* Croatia
* Norway
* Norway and Sweden
* Sweden
Croatia was recommended as the preferred bid. Croatia was confirmed as the host on 20 September 2014.

## Venues

Each venue hosted one group, while Zagreb and Varaždin (which replaced Split as a main round venue) hosted the main round. The final weekend was in Zagreb.
| Zagreb | Split | ZagrebSplitVaraždinPoreč |
| Arena Zagreb Capacity: 15,200 | Spaladium Arena Capacity: 10,941 | ZagrebSplitVaraždinPoreč |
| Varaždin | Poreč | ZagrebSplitVaraždinPoreč |
| Varaždin Arena Capacity: 5,200 | Žatika Sport Centre Capacity: 3,700 | ZagrebSplitVaraždinPoreč |

## Qualification
### Qualified teams

| Country | Qualified as | Qualified on | Previous appearances in tournament |
| Croatia | Host | 20 September 2014 | 12 (1994, 1996, 1998, 2000, 2002, 2004, 2006, 2008, 2010, 2012, 2014, 2016) |
| Spain | Group 3 winner | 6 May 2017 | 12 (1994, 1996, 1998, 2000, 2002, 2004, 2006, 2008, 2010, 2012, 2014, 2016) |
| Germany | Group 5 winner | 6 May 2017 | 11 (1994, 1996, 1998, 2000, 2002, 2004, 2006, 2008, 2010, 2012, 2016) |
| Sweden | Group 6 winner | 6 May 2017 | 11 (1994, 1996, 1998, 2000, 2002, 2004, 2008, 2010, 2012, 2014, 2016) |
| Denmark | Group 1 winner | 14 June 2017 | 11 (1994, 1996, 2000, 2002, 2004, 2006, 2008, 2010, 2012, 2014, 2016) |
| France | Group 7 winner | 14 June 2017 | 12 (1994, 1996, 1998, 2000, 2002, 2004, 2006, 2008, 2010, 2012, 2014, 2016) |
| Hungary | Group 1 runner-up | 15 June 2017 | 10 (1994, 1996, 1998, 2004, 2006, 2008, 2010, 2012, 2014, 2016) |
| Serbia | Group 2 runner-up | 15 June 2017 | 4 ( 2010, 2012, 2014, 2016) |
| Belarus | Group 2 winner | 15 June 2017 | 4 (1994, 2008, 2014, 2016) |
| Montenegro | Group 6 runner-up | 17 June 2017 | 3 (2008, 2014, 2016) |
| Norway | Group 7 runner-up | 17 June 2017 | 7 (2000, 2006, 2008, 2010, 2012, 2014, 2016) |
| Slovenia | Group 5 runner-up | 17 June 2017 | 10 (1994, 1996, 2000, 2002, 2004, 2006, 2008, 2010, 2012, 2016) |
| Austria | Group 3 runner-up | 17 June 2017 | 2 (2010, 2014) |
| Czech Republic | Group 4 runner-up | 18 June 2017 | 8 (1996, 1998, 2002, 2004, 2008, 2010, 2012, 2014) |
| Macedonia | Group 4 winner | 18 June 2017 | 4 (1998, 2012, 2014, 2016) |
| Iceland | Group 4 third place | 18 June 2017 | 9 (2000, 2002, 2004, 2006, 2008, 2010, 2012, 2014, 2016) |
Note: Bold indicates champion for that year. Italic indicates host for that year.

## Draw

The draw was held on 23 June 2017.

### Seeding

The seedings were announced on 19 June 2017.
| Pot 1 | Pot 2 | Pot 3 | Pot 4 |
| Germany  Spain  Croatia (assigned to A1)  France | Denmark  Belarus  Sweden  Macedonia | Norway (assigned to B3)  Serbia  Montenegro  Czech Republic | Hungary (assigned to D4)  Slovenia (assigned to C4)  Austria  Iceland |

## Match officials

On 26 October 2017, 12 couples were announced.
| Country | Referees |
| Belarus | Andrei Gousko Siarhei Repkin |
| Croatia | Matija Gubica Boris Milošević |
| Czech Republic | Václav Horáček Jiří Novotný |
| Denmark | Martin Gjeding Mads Hansen |
| France | Stevann Pichon Laurent Reveret |
| Germany | Lars Geipel Marcus Helbig |
| Country | Referees |
| Lithuania | Vaidas Mažeika Mindaugas Gatelis |
| Macedonia | Gjorgi Nachevski Slave Nikolov |
| Portugal | Duarte Santos Ricardo Fonseca |
| Romania | Sorin-Laurențiu Dinu Constantin Din |
| Spain | Óscar Raluy Ángel Sabroso |
| Russia | Evgeny Zotin Nikolay Volodkov |

## Preliminary round

All times are local (UTC+1).

### Group A

| Pos | Team | Pld | W | D | L | GF | GA | GD | Pts | Qualification |
| 1 | Sweden | 3 | 2 | 0 | 1 | 89 | 82 | +7 | 4 | Main round |
| 2 | Croatia (H) | 3 | 2 | 0 | 1 | 92 | 79 | +13 | 4 | Main round |
| 3 | Serbia | 3 | 1 | 0 | 2 | 76 | 88 | −12 | 2 | Main round |
| 4 | Iceland | 3 | 1 | 0 | 2 | 74 | 82 | −8 | 2 | |
* 1 2 Croatia 31–35 Sweden
* 1 2 Serbia 29–26 Iceland
| 12 January 2018 18:15 | Sweden | 24–26 | Iceland | Spaladium Arena, Split Attendance: 8,700 Referees: Nikolov, Nachevski (MKD) |
| 12 January 2018 18:15 | Gottfridsson 6 | (8–15) | Guðmundsson 7 | Spaladium Arena, Split Attendance: 8,700 Referees: Nikolov, Nachevski (MKD) |
| 12 January 2018 18:15 | 2× 4× | Report | 3× 2× | Spaladium Arena, Split Attendance: 8,700 Referees: Nikolov, Nachevski (MKD) |
| 12 January 2018 20:30 | Croatia | 32–22 | Serbia | Spaladium Arena, Split Attendance: 11,000 Referees: Geipel, Helbig (GER) |
| 12 January 2018 20:30 | Stepančić, Štrlek 6 | (14–9) | Nenadić 6 | Spaladium Arena, Split Attendance: 11,000 Referees: Geipel, Helbig (GER) |
| 12 January 2018 20:30 | 2× 3× | Report | 1× 4× | Spaladium Arena, Split Attendance: 11,000 Referees: Geipel, Helbig (GER) |
| 14 January 2018 18:15 | Serbia | 25–30 | Sweden | Spaladium Arena, Split Attendance: 9,500 Referees: Gjeding, Hansen (DEN) |
| 14 January 2018 18:15 | Ilić 5 | (10–16) | Lagergren 5 | Spaladium Arena, Split Attendance: 9,500 Referees: Gjeding, Hansen (DEN) |
| 14 January 2018 18:15 | 1× 4× | Report | 2× 6× | Spaladium Arena, Split Attendance: 9,500 Referees: Gjeding, Hansen (DEN) |
| 14 January 2018 20:30 | Iceland | 22–29 | Croatia | Spaladium Arena, Split Attendance: 10,500 Referees: Zotin, Volotkov (RUS) |
| 14 January 2018 20:30 | Pálmarsson 5 | (13–14) | Cindrić 7 | Spaladium Arena, Split Attendance: 10,500 Referees: Zotin, Volotkov (RUS) |
| 14 January 2018 20:30 | 4× | Report | 3× 2× | Spaladium Arena, Split Attendance: 10,500 Referees: Zotin, Volotkov (RUS) |
| 16 January 2018 18:15 | Serbia | 29–26 | Iceland | Spaladium Arena, Split Attendance: 9,800 Referees: Raluy, Sabroso (ESP) |
| 16 January 2018 18:15 | Radivojević, Šešum 5 | (12–12) | Sigurðsson 8 | Spaladium Arena, Split Attendance: 9,800 Referees: Raluy, Sabroso (ESP) |
| 16 January 2018 18:15 | 2× 3× | Report | 3× 4× | Spaladium Arena, Split Attendance: 9,800 Referees: Raluy, Sabroso (ESP) |
| 16 January 2018 20:30 | Croatia | 31–35 | Sweden | Spaladium Arena, Split Attendance: 11,000 Referees: Horáček, Novotný (CZE) |
| 16 January 2018 20:30 | Čupić 7 | (12–17) | Lagergren 6 | Spaladium Arena, Split Attendance: 11,000 Referees: Horáček, Novotný (CZE) |
| 16 January 2018 20:30 | 3× 4× | Report | 2× 5× | Spaladium Arena, Split Attendance: 11,000 Referees: Horáček, Novotný (CZE) |

### Group B

| Pos | Team | Pld | W | D | L | GF | GA | GD | Pts | Qualification |
| 1 | France | 3 | 3 | 0 | 0 | 97 | 82 | +15 | 6 | Main round |
| 2 | Norway | 3 | 2 | 0 | 1 | 103 | 88 | +15 | 4 | Main round |
| 3 | Belarus | 3 | 1 | 0 | 2 | 80 | 91 | −11 | 2 | Main round |
| 4 | Austria | 3 | 0 | 0 | 3 | 80 | 99 | −19 | 0 | |
| 12 January 2018 18:15 | Belarus | 27–26 | Austria | Žatika Sport Centre, Poreč Attendance: 3,100 Referees: Horáček, Novotný (CZE) |
| 12 January 2018 18:15 | Kulesh 7 | (14–12) | Bilyk 8 | Žatika Sport Centre, Poreč Attendance: 3,100 Referees: Horáček, Novotný (CZE) |
| 12 January 2018 18:15 | 3× 4× | Report | 2× 7× 1× | Žatika Sport Centre, Poreč Attendance: 3,100 Referees: Horáček, Novotný (CZE) |
| 12 January 2018 20:30 | France | 32–31 | Norway | Žatika Sport Centre, Poreč Attendance: 3,600 Referees: Raluy, Sabroso (ESP) |
| 12 January 2018 20:30 | Mahé 8 | (15–17) | Tønnesen 7 | Žatika Sport Centre, Poreč Attendance: 3,600 Referees: Raluy, Sabroso (ESP) |
| 12 January 2018 20:30 | 2× 2× | Report | 3× 3× | Žatika Sport Centre, Poreč Attendance: 3,600 Referees: Raluy, Sabroso (ESP) |
| 14 January 2018 18:15 | Austria | 26–33 | France | Žatika Sport Centre, Poreč Attendance: 2,900 Referees: Geipel, Helbig (GER) |
| 14 January 2018 18:15 | Weber 5 | (12–17) | N'Guessan 7 | Žatika Sport Centre, Poreč Attendance: 2,900 Referees: Geipel, Helbig (GER) |
| 14 January 2018 18:15 | 1× 5× 1× | Report | 3× | Žatika Sport Centre, Poreč Attendance: 2,900 Referees: Geipel, Helbig (GER) |
| 14 January 2018 20:30 | Norway | 33–28 | Belarus | Žatika Sport Centre, Poreč Attendance: 2,500 Referees: Nikolov, Nachevski (MKD) |
| 14 January 2018 20:30 | three players 6 | (15–12) | Karalek 5 | Žatika Sport Centre, Poreč Attendance: 2,500 Referees: Nikolov, Nachevski (MKD) |
| 14 January 2018 20:30 | 3× 2× | Report | 3× 6× | Žatika Sport Centre, Poreč Attendance: 2,500 Referees: Nikolov, Nachevski (MKD) |
| 16 January 2018 18:15 | France | 32–25 | Belarus | Žatika Sport Centre, Poreč Attendance: 2,300 Referees: Mažeika, Gatelis (LTU) |
| 16 January 2018 18:15 | Mem 9 | (14–11) | Padshyvalau 6 | Žatika Sport Centre, Poreč Attendance: 2,300 Referees: Mažeika, Gatelis (LTU) |
| 16 January 2018 18:15 | 3× 2× | Report | 1× 4× 1× | Žatika Sport Centre, Poreč Attendance: 2,300 Referees: Mažeika, Gatelis (LTU) |
| 16 January 2018 20:30 | Norway | 39–28 | Austria | Žatika Sport Centre, Poreč Attendance: 1,600 Referees: Gjeding, Hansen (DEN) |
| 16 January 2018 20:30 | Bjørnsen 9 | (18–14) | Bilyk 9 | Žatika Sport Centre, Poreč Attendance: 1,600 Referees: Gjeding, Hansen (DEN) |
| 16 January 2018 20:30 | 2× 6× | Report | 3× 5× 2× | Žatika Sport Centre, Poreč Attendance: 1,600 Referees: Gjeding, Hansen (DEN) |

### Group C

| Pos | Team | Pld | W | D | L | GF | GA | GD | Pts | Qualification |
| 1 | Macedonia | 3 | 2 | 1 | 0 | 79 | 77 | +2 | 5 | Main round |
| 2 | Germany | 3 | 1 | 2 | 0 | 82 | 69 | +13 | 4 | Main round |
| 3 | Slovenia | 3 | 1 | 1 | 1 | 77 | 69 | +8 | 3 | Main round |
| 4 | Montenegro | 3 | 0 | 0 | 3 | 66 | 89 | −23 | 0 | |
| 13 January 2018 17:15 | Germany | 32–19 | Montenegro | Arena Zagreb, Zagreb Attendance: 8,000 Referees: Pichon, Reveret (FRA) |
| 13 January 2018 17:15 | Gensheimer 9 | (17–9) | Lipovina 7 | Arena Zagreb, Zagreb Attendance: 8,000 Referees: Pichon, Reveret (FRA) |
| 13 January 2018 17:15 | 3× 8× 1× | Report | 2× 4× | Arena Zagreb, Zagreb Attendance: 8,000 Referees: Pichon, Reveret (FRA) |
| 13 January 2018 19:30 | Macedonia | 25–24 | Slovenia | Arena Zagreb, Zagreb Attendance: 11,000 Referees: Dinu, Din (ROU) |
| 13 January 2018 19:30 | Manaskov 8 | (11–11) | Mlakar 4 | Arena Zagreb, Zagreb Attendance: 11,000 Referees: Dinu, Din (ROU) |
| 13 January 2018 19:30 | 4× 6× | Report | 4× 11× 1× | Arena Zagreb, Zagreb Attendance: 11,000 Referees: Dinu, Din (ROU) |
| 15 January 2018 18:15 | Slovenia | 25–25 | Germany | Arena Zagreb, Zagreb Attendance: 6,500 Referees: Mažeika, Gatelis (LTU) |
| 15 January 2018 18:15 | Zarabec 5 | (15–10) | Gensheimer 7 | Arena Zagreb, Zagreb Attendance: 6,500 Referees: Mažeika, Gatelis (LTU) |
| 15 January 2018 18:15 | 4× 8× 1× | Report | 4× 3× | Arena Zagreb, Zagreb Attendance: 6,500 Referees: Mažeika, Gatelis (LTU) |
| 15 January 2018 20:30 | Montenegro | 28–29 | Macedonia | Arena Zagreb, Zagreb Attendance: 5,000 Referees: Santos, Fonseca (POR) |
| 15 January 2018 20:30 | Čavor 6 | (16–15) | Kuzmanovski 5 | Arena Zagreb, Zagreb Attendance: 5,000 Referees: Santos, Fonseca (POR) |
| 15 January 2018 20:30 | 2× 7× 1× | Report | 2× 8× | Arena Zagreb, Zagreb Attendance: 5,000 Referees: Santos, Fonseca (POR) |
| 17 January 2018 18:15 | Germany | 25–25 | Macedonia | Arena Zagreb, Zagreb Attendance: 5,100 Referees: Gousko, Repkin (BLR) |
| 17 January 2018 18:15 | Weinhold 8 | (12–11) | Taleski 6 | Arena Zagreb, Zagreb Attendance: 5,100 Referees: Gousko, Repkin (BLR) |
| 17 January 2018 18:15 | 3× 3× | Report | 3× 2× | Arena Zagreb, Zagreb Attendance: 5,100 Referees: Gousko, Repkin (BLR) |
| 17 January 2018 20:30 | Montenegro | 19–28 | Slovenia | Arena Zagreb, Zagreb Attendance: 6,200 Referees: Gubica, Milošević (CRO) |
| 17 January 2018 20:30 | Ševaljević 6 | (13–14) | Marguč 6 | Arena Zagreb, Zagreb Attendance: 6,200 Referees: Gubica, Milošević (CRO) |
| 17 January 2018 20:30 | 3× 5× | Report | 2× 5× 1× | Arena Zagreb, Zagreb Attendance: 6,200 Referees: Gubica, Milošević (CRO) |

### Group D

| Pos | Team | Pld | W | D | L | GF | GA | GD | Pts | Qualification |
| 1 | Spain | 3 | 2 | 0 | 1 | 81 | 65 | +16 | 4 | Main round |
| 2 | Denmark | 3 | 2 | 0 | 1 | 84 | 75 | +9 | 4 | Main round |
| 3 | Czech Republic | 3 | 2 | 0 | 1 | 76 | 86 | −10 | 4 | Main round |
| 4 | Hungary | 3 | 0 | 0 | 3 | 77 | 92 | −15 | 0 | |
* 1 2 3 Spain 2 Pts, +14 GD; Denmark 2 Pts, +2 GD; Czech Republic 2 Pts, −16 GD
| 13 January 2018 18:15 | Spain | 32–15 | Czech Republic | Varaždin Arena, Varaždin Attendance: 3,780 Referees: Santos, Fonseca (POR) |
| 13 January 2018 18:15 | three players 5 | (16–9) | Kašpárek 5 | Varaždin Arena, Varaždin Attendance: 3,780 Referees: Santos, Fonseca (POR) |
| 13 January 2018 18:15 | 1× 2× | Report | 2× 4× | Varaždin Arena, Varaždin Attendance: 3,780 Referees: Santos, Fonseca (POR) |
| 13 January 2018 20:30 | Denmark | 32–25 | Hungary | Varaždin Arena, Varaždin Attendance: 5,170 Referees: Gubica, Milošević (CRO) |
| 13 January 2018 20:30 | Lauge Schmidt 7 | (14–12) | Lékai 5 | Varaždin Arena, Varaždin Attendance: 5,170 Referees: Gubica, Milošević (CRO) |
| 13 January 2018 20:30 | 2× 5× 1× | Report | 3× 5× | Varaždin Arena, Varaždin Attendance: 5,170 Referees: Gubica, Milošević (CRO) |
| 15 January 2018 18:15 | Hungary | 25–27 | Spain | Varaždin Arena, Varaždin Attendance: 3,470 Referees: Dinu, Din (ROU) |
| 15 January 2018 18:15 | Bánhidi 6 | (12–13) | four players 4 | Varaždin Arena, Varaždin Attendance: 3,470 Referees: Dinu, Din (ROU) |
| 15 January 2018 18:15 | 4× 5× | Report | 4× 2× | Varaždin Arena, Varaždin Attendance: 3,470 Referees: Dinu, Din (ROU) |
| 15 January 2018 20:30 | Czech Republic | 28–27 | Denmark | Varaždin Arena, Varaždin Attendance: 4,100 Referees: Gousko, Repkin (BLR) |
| 15 January 2018 20:30 | Zdráhala 8 | (15–16) | Hansen 7 | Varaždin Arena, Varaždin Attendance: 4,100 Referees: Gousko, Repkin (BLR) |
| 15 January 2018 20:30 | 3× 4× | Report | 2× 3× | Varaždin Arena, Varaždin Attendance: 4,100 Referees: Gousko, Repkin (BLR) |
| 17 January 2018 18:15 | Czech Republic | 33–27 | Hungary | Varaždin Arena, Varaždin Attendance: 3,790 Referees: Pichon, Reveret (FRA) |
| 17 January 2018 18:15 | Zdráhala 14 | (15–11) | Lékai 9 | Varaždin Arena, Varaždin Attendance: 3,790 Referees: Pichon, Reveret (FRA) |
| 17 January 2018 18:15 | 2× 3× 1× | Report | 1× 1× | Varaždin Arena, Varaždin Attendance: 3,790 Referees: Pichon, Reveret (FRA) |
| 17 January 2018 20:30 | Spain | 22–25 | Denmark | Varaždin Arena, Varaždin Attendance: 4,100 Referees: Zotin, Volodkov (RUS) |
| 17 January 2018 20:30 | A. Dujshebaev 6 | (13–14) | Balling 8 | Varaždin Arena, Varaždin Attendance: 4,100 Referees: Zotin, Volodkov (RUS) |
| 17 January 2018 20:30 | 3× 1× | Report | 3× 3× | Varaždin Arena, Varaždin Attendance: 4,100 Referees: Zotin, Volodkov (RUS) |

## Main round

Points and goals gained in the preliminary group against teams that advanced, were taken over.

### Group I

| Pos | Team | Pld | W | D | L | GF | GA | GD | Pts | Qualification |
| 1 | France | 5 | 5 | 0 | 0 | 156 | 130 | +26 | 10 | Advanced to semifinals |
| 2 | Sweden | 5 | 3 | 0 | 2 | 136 | 127 | +9 | 6 | Advanced to semifinals |
| 3 | Croatia (H) | 5 | 3 | 0 | 2 | 147 | 138 | +9 | 6 | Advanced to fifth place game |
| 4 | Norway | 5 | 3 | 0 | 2 | 152 | 144 | +8 | 6 | |
| 5 | Belarus | 5 | 1 | 0 | 4 | 128 | 146 | −18 | 2 | |
| 6 | Serbia | 5 | 0 | 0 | 5 | 131 | 165 | −34 | 0 | |
* 1 2 3 Sweden 2 Pts, +1 GD; Croatia 2 Pts, 0 GD; Norway 2 Pts, −1 GD
| 18 January 2018 18:15 | Serbia | 27–32 | Norway | Arena Zagreb, Zagreb Attendance: 3,200 Referees: Santos, Fonseca (POR) |
| 18 January 2018 18:15 | Beljanski, Šešum 5 | (17–17) | Bjørnsen, Sagosen 8 | Arena Zagreb, Zagreb Attendance: 3,200 Referees: Santos, Fonseca (POR) |
| 18 January 2018 18:15 | 2× 4× | Report | 1× 3× | Arena Zagreb, Zagreb Attendance: 3,200 Referees: Santos, Fonseca (POR) |
| 18 January 2018 20:30 | Croatia | 25–23 | Belarus | Arena Zagreb, Zagreb Attendance: 8,100 Referees: Zotin, Volodkov (RUS) |
| 18 January 2018 20:30 | Mamić, Stepančić 5 | (15–12) | Yurynok 6 | Arena Zagreb, Zagreb Attendance: 8,100 Referees: Zotin, Volodkov (RUS) |
| 18 January 2018 20:30 | 4× 1× | Report | 3× 3× 1× | Arena Zagreb, Zagreb Attendance: 8,100 Referees: Zotin, Volodkov (RUS) |
| 20 January 2018 18:15 | Sweden | 17–23 | France | Arena Zagreb, Zagreb Attendance: 7,100 Referees: Raluy, Sabroso (ESP) |
| 20 January 2018 18:15 | Jeppsson 4 | (8–10) | Sorhaindo 5 | Arena Zagreb, Zagreb Attendance: 7,100 Referees: Raluy, Sabroso (ESP) |
| 20 January 2018 18:15 | 2× 4× | Report | 3× 2× 1× | Arena Zagreb, Zagreb Attendance: 7,100 Referees: Raluy, Sabroso (ESP) |
| 20 January 2018 20:30 | Croatia | 32–28 | Norway | Arena Zagreb, Zagreb Attendance: 13,000 Referees: Dinu, Din (ROU) |
| 20 January 2018 20:30 | Štrlek 6 | (17–15) | Sagosen 8 | Arena Zagreb, Zagreb Attendance: 13,000 Referees: Dinu, Din (ROU) |
| 20 January 2018 20:30 | 4× 6× | Report | 3× 2× | Arena Zagreb, Zagreb Attendance: 13,000 Referees: Dinu, Din (ROU) |
| 22 January 2018 18:15 | Serbia | 30–39 | France | Arena Zagreb, Zagreb Attendance: 1,700 Referees: Gjeding, Hansen (DEN) |
| 22 January 2018 18:15 | Zelenović 7 | (12–19) | Caucheteux, L. Karabatic 7 | Arena Zagreb, Zagreb Attendance: 1,700 Referees: Gjeding, Hansen (DEN) |
| 22 January 2018 18:15 | 1× 4× 1× | Report | 3× | Arena Zagreb, Zagreb Attendance: 1,700 Referees: Gjeding, Hansen (DEN) |
| 22 January 2018 20:30 | Sweden | 29–20 | Belarus | Arena Zagreb, Zagreb Attendance: 1,400 Referees: Horáček, Novotný (CZE) |
| 22 January 2018 20:30 | Lagergren, Wanne 4 | (16–11) | Karalek, Kulesh 4 | Arena Zagreb, Zagreb Attendance: 1,400 Referees: Horáček, Novotný (CZE) |
| 22 January 2018 20:30 | 3× 4× | Report | 1× 4× | Arena Zagreb, Zagreb Attendance: 1,400 Referees: Horáček, Novotný (CZE) |
| 24 January 2018 16:00 | Serbia | 27–32 | Belarus | Arena Zagreb, Zagreb Attendance: 1,000 Referees: Raluy, Sabroso (ESP) |
| 24 January 2018 16:00 | Nenadić 7 | (11–16) | Pukhouski 9 | Arena Zagreb, Zagreb Attendance: 1,000 Referees: Raluy, Sabroso (ESP) |
| 24 January 2018 16:00 | 2× 5× | Report | 3× 4× | Arena Zagreb, Zagreb Attendance: 1,000 Referees: Raluy, Sabroso (ESP) |
| 24 January 2018 18:15 | Sweden | 25–28 | Norway | Arena Zagreb, Zagreb Attendance: 8,100 Referees: Nikolov, Nachevski (MKD) |
| 24 January 2018 18:15 | Tollbring 6 | (11–12) | Myrhol 7 | Arena Zagreb, Zagreb Attendance: 8,100 Referees: Nikolov, Nachevski (MKD) |
| 24 January 2018 18:15 | 2× 3× 1× | Report | 4× 6× | Arena Zagreb, Zagreb Attendance: 8,100 Referees: Nikolov, Nachevski (MKD) |
| 24 January 2018 20:30 | Croatia | 27–30 | France | Arena Zagreb, Zagreb Attendance: 14,000 Referees: Geipel, Helbig (GER) |
| 24 January 2018 20:30 | Štrlek 6 | (13–19) | Remili 6 | Arena Zagreb, Zagreb Attendance: 14,000 Referees: Geipel, Helbig (GER) |
| 24 January 2018 20:30 | 3× 3× | Report | 5× | Arena Zagreb, Zagreb Attendance: 14,000 Referees: Geipel, Helbig (GER) |

### Group II

| Pos | Team | Pld | W | D | L | GF | GA | GD | Pts | Qualification |
| 1 | Denmark | 5 | 4 | 0 | 1 | 140 | 123 | +17 | 8 | Advanced to semifinals |
| 2 | Spain | 5 | 3 | 0 | 2 | 142 | 118 | +24 | 6 | Advanced to semifinals |
| 3 | Czech Republic | 5 | 2 | 1 | 2 | 113 | 131 | −18 | 5 | Advanced to fifth place game |
| 4 | Slovenia | 5 | 1 | 2 | 2 | 134 | 133 | +1 | 4 | |
| 5 | Germany | 5 | 1 | 2 | 2 | 124 | 126 | −2 | 4 | |
| 6 | Macedonia | 5 | 1 | 1 | 3 | 114 | 136 | −22 | 3 | |
* 1 2 Slovenia 25–25 Germany
| 19 January 2018 18:15 | Germany | 22–19 | Czech Republic | Varaždin Arena, Varaždin Attendance: 2,130 Referees: Gubica, Milošević (CRO) |
| 19 January 2018 18:15 | Fäth 8 | (9–10) | Číp 6 | Varaždin Arena, Varaždin Attendance: 2,130 Referees: Gubica, Milošević (CRO) |
| 19 January 2018 18:15 | 2× 3× | Report | 3× 4× | Varaždin Arena, Varaždin Attendance: 2,130 Referees: Gubica, Milošević (CRO) |
| 19 January 2018 20:30 | Slovenia | 28–31 | Denmark | Varaždin Arena, Varaždin Attendance: 5,200 Referees: Pichon, Reveret (FRA) |
| 19 January 2018 20:30 | Zarabec 6 | (14–16) | Svan 11 | Varaždin Arena, Varaždin Attendance: 5,200 Referees: Pichon, Reveret (FRA) |
| 19 January 2018 20:30 | 2× 5× | Report | 2× 3× | Varaždin Arena, Varaždin Attendance: 5,200 Referees: Pichon, Reveret (FRA) |
| 21 January 2018 18:15 | Germany | 25–26 | Denmark | Varaždin Arena, Varaždin Attendance: 3,112 Referees: Gubica, Milošević (CRO) |
| 21 January 2018 18:15 | Kühn 6 | (9–8) | Lindberg 9 | Varaždin Arena, Varaždin Attendance: 3,112 Referees: Gubica, Milošević (CRO) |
| 21 January 2018 18:15 | 4× 3× | Report | 3× 1× | Varaždin Arena, Varaždin Attendance: 3,112 Referees: Gubica, Milošević (CRO) |
| 21 January 2018 20:30 | Macedonia | 20–31 | Spain | Varaždin Arena, Varaždin Attendance: 3,796 Referees: Gousko, Repkin (BLR) |
| 21 January 2018 20:30 | Manaskov, Stoilov 4 | (6–15) | Gurbindo 6 | Varaždin Arena, Varaždin Attendance: 3,796 Referees: Gousko, Repkin (BLR) |
| 21 January 2018 20:30 | 3× 1× | Report | 3× 3× | Varaždin Arena, Varaždin Attendance: 3,796 Referees: Gousko, Repkin (BLR) |
| 23 January 2018 18:15 | Slovenia | 31–26 | Spain | Varaždin Arena, Varaždin Attendance: 4,176 Referees: Dinu, Din (ROU) |
| 23 January 2018 18:15 | Marguč 5 | (13–12) | Solé 6 | Varaždin Arena, Varaždin Attendance: 4,176 Referees: Dinu, Din (ROU) |
| 23 January 2018 18:15 | 3× 8× | Report | 3× 3× 1× | Varaždin Arena, Varaždin Attendance: 4,176 Referees: Dinu, Din (ROU) |
| 23 January 2018 20:30 | Macedonia | 24–25 | Czech Republic | Varaždin Arena, Varaždin Attendance: 3,780 Referees: Zotin, Volodkov (RUS) |
| 23 January 2018 20:30 | Taleski 5 | (13–11) | Horák 8 | Varaždin Arena, Varaždin Attendance: 3,780 Referees: Zotin, Volodkov (RUS) |
| 23 January 2018 20:30 | 3× 2× | Report | 3× 5× 1× | Varaždin Arena, Varaždin Attendance: 3,780 Referees: Zotin, Volodkov (RUS) |
| 24 January 2018 16:00 | Slovenia | 26–26 | Czech Republic | Varaždin Arena, Varaždin Attendance: 2,873 Referees: Santos, Fonseca (POR) |
| 24 January 2018 16:00 | three players 5 | (11–12) | Zdráhala 9 | Varaždin Arena, Varaždin Attendance: 2,873 Referees: Santos, Fonseca (POR) |
| 24 January 2018 16:00 | 3× 2× | Report | 2× 4× 2× | Varaždin Arena, Varaždin Attendance: 2,873 Referees: Santos, Fonseca (POR) |
| 24 January 2018 18:15 | Macedonia | 20–31 | Denmark | Varaždin Arena, Varaždin Attendance: 2,343 Referees: Mažeika, Gatelis (LTU) |
| 24 January 2018 18:15 | Kuzmanovski 6 | (12–12) | Damgaard 11 | Varaždin Arena, Varaždin Attendance: 2,343 Referees: Mažeika, Gatelis (LTU) |
| 24 January 2018 18:15 | 1× 2× | Report | 3× 3× | Varaždin Arena, Varaždin Attendance: 2,343 Referees: Mažeika, Gatelis (LTU) |
| 24 January 2018 20:30 | Germany | 27–31 | Spain | Varaždin Arena, Varaždin Attendance: 1,289 Referees: Pichon, Reveret (FRA) |
| 24 January 2018 20:30 | Hafner 5 | (13–14) | Balaguer 6 | Varaždin Arena, Varaždin Attendance: 1,289 Referees: Pichon, Reveret (FRA) |
| 24 January 2018 20:30 | 3× 2× | Report | 3× 1× | Varaždin Arena, Varaždin Attendance: 1,289 Referees: Pichon, Reveret (FRA) |

## Knockout stage
### Bracket

| Semifinals | Semifinals | Final | Final |
| 26 January | 26 January |
| France | 23 |
| France | 23 | 28 January | 28 January |
| Spain | 27 | 28 January | 28 January |
| Spain | 27 | Spain | 29 |
| 26 January | 26 January | | Spain | 29 |
| 26 January | 26 January | Sweden | 23 |
| Denmark | 34 | Sweden | 23 |
| Sweden (ET) | 35 | | |
| Sweden (ET) | 35 | Third place game | Third place game |
| | | 28 January | 28 January |
| | | France | 32 |
| | | Denmark | 29 |

### Semifinals

| 26 January 2018 18:00 | France | 23–27 | Spain | Arena Zagreb, Zagreb Attendance: 6,000 Referees: Nikolov, Nachevski (MKD) |
| 26 January 2018 18:00 | Sorhaindo 6 | (9–15) | Solé 7 | Arena Zagreb, Zagreb Attendance: 6,000 Referees: Nikolov, Nachevski (MKD) |
| 26 January 2018 18:00 | 3× 4× | Report | 3× 4× | Arena Zagreb, Zagreb Attendance: 6,000 Referees: Nikolov, Nachevski (MKD) |
| 26 January 2018 20:30 | Denmark | 34–35 (ET) | Sweden | Arena Zagreb, Zagreb Attendance: 9,000 Referees: Geipel, Helbig (GER) |
| 26 January 2018 20:30 | Hansen 12 | (14–16) | Zachrisson 8 | Arena Zagreb, Zagreb Attendance: 9,000 Referees: Geipel, Helbig (GER) |
| 26 January 2018 20:30 | 1× 3× | Report | 1× 4× | Arena Zagreb, Zagreb Attendance: 9,000 Referees: Geipel, Helbig (GER) |
| Arena Zagreb, Zagreb Attendance: 9,000 Referees: Geipel, Helbig (GER) |||

### Fifth place game

| 26 January 2018 15:30 | Croatia | 28–27 | Czech Republic | Arena Zagreb, Zagreb Attendance: 3,500 Referees: Raluy, Sabroso (ESP) |
| 26 January 2018 15:30 | Horvat 10 | (16–10) | Zdráhala 13 | Arena Zagreb, Zagreb Attendance: 3,500 Referees: Raluy, Sabroso (ESP) |
| 26 January 2018 15:30 | 4× 2× | Report | 3× 2× | Arena Zagreb, Zagreb Attendance: 3,500 Referees: Raluy, Sabroso (ESP) |

### Third place game

| 28 January 2018 18:00 | France | 32–29 | Denmark | Arena Zagreb, Zagreb Attendance: 6,700 Referees: Dinu, Din (ROU) |
| 28 January 2018 18:00 | N. Karabatić 9 | (17–14) | Lindberg 12 | Arena Zagreb, Zagreb Attendance: 6,700 Referees: Dinu, Din (ROU) |
| 28 January 2018 18:00 | 4× 3× | Report | 3× 3× | Arena Zagreb, Zagreb Attendance: 6,700 Referees: Dinu, Din (ROU) |

### Final

| 28 January 2018 20:30 | Spain | 29–23 | Sweden | Arena Zagreb, Zagreb Attendance: 9,000 Referees: Gubica, Milošević (CRO) |
| 28 January 2018 20:30 | Balaguer, Solé 5 | (12–14) | Nielsen 5 | Arena Zagreb, Zagreb Attendance: 9,000 Referees: Gubica, Milošević (CRO) |
| 28 January 2018 20:30 | 4× 2× | Report | 4× 3× | Arena Zagreb, Zagreb Attendance: 9,000 Referees: Gubica, Milošević (CRO) |

## Ranking and statistics
### Final ranking

| Rank | Team |
| | Spain |
| | Sweden |
| | France |
| 4 | Denmark |
| 5 | Croatia |
| 6 | Czech Republic |
| 7 | Norway |
| 8 | Slovenia |
| 9 | Germany |
| 10 | Belarus |
| 11 | Macedonia |
| 12 | Serbia |
| 13 | Iceland |
| 14 | Hungary |
| 15 | Austria |
| 16 | Montenegro |
Qualified for 2019 World Men's Handball Championship as: :
* winner of this tournament
* co-host
* winner of 2017 World Championship
* 2018 Men's European Champions
* Spain First title
* Team roster: Eduardo Gurbindo, Ángel Fernández Pérez, Valero Rivera Folch, Raúl Entrerríos, Alex Dujshebaev, Daniel Sarmiento Melián, Julen Aguinagalde, Arpad Šterbik, Joan Cañellas, Viran Morros, Aitor Ariño, Gedeón Guardiola, Iosu Goñi Leoz, Gonzalo Pérez de Vargas, Rodrigo Corrales, Ferrán Solé, David Balaguer, Adrià Figueras, Daniel Dujshebaev Head coach: Jordi Ribera.

### All-Star Team

The all-star team and awards were announced on 28 January 2018.
| Position | Player |
| Goalkeeper | Vincent Gérard (FRA) |
| Right wing | Ferrán Solé (ESP) |
| Right back | Alex Dujshebaev (ESP) |
| Centre back | Sander Sagosen (NOR) |
| Left back | Mikkel Hansen (DEN) |
| Left wing | Manuel Štrlek (CRO) |
| Pivot | Jesper Nielsen (SWE) |

### Awards

| Award | Player |
| Most Valuable Player | Jim Gottfridsson (SWE) |
| Best Defence Player | Jakov Gojun (CRO) |
| Topscorer | Ondřej Zdráhala (CZE) (55 goals) |