En quarts de finale, les trois premiers matchs sont conformes à la hiérarchie avec les victoires de la France face au Brésil (34-27 grâce à un décisif 7-1 en milieu de seconde période alors que les deux équipes étaient à égalité 22-22), de l'Allemagne face à un Qatar décevant (34-22) et du Danemark face à la Slovénie (37-30). En revanche, le dernier match voit les Polonais, médaillés de bronze au Mondial 2015, renverser les Croates qui ratent pour la première fois l'accès aux demi-finales. Celles-ci sont conclues par deux matchs très serrés : grâce à un but exceptionnel de Daniel Narcisse à la dernière seconde, la France s'impose face à l'Allemagne 29 à 28 tandis que le Danemark doit passer par une prolongation pour écarter la Pologne (29-28). En finale, les Français font figure de favori : ils ont battu les Danois en phase de poule et lors de leurs deux dernières oppositions en finale (au Championnat du monde 2011 puis au Championnat d'Europe 2014), ils postulent à un troisième titre olympique consécutif et ils ont remportés leurs dix dernières finales internationales. Mais les Danois et un Mikkel Hansen intenable (8 buts) ont balayé les espoirs français : menant de deux buts à la mi-temps, le Danemark porte son avance à 5 buts à dix minutes du terme. Si les Français parviennent à recoller à un but (26-25, ), c'est bien le Danemark qui s'impose 28 à 26 et remporte son premier titre olympique. La France concède ainsi sa première défaite en finale depuis sa première finale au Championnat du monde 1993 : Daniel Narcisse et Thierry Omeyer ne rejoignent donc pas Andreï Lavrov qui reste le seul triple champion olympique de handball, jusqu'à l'olympiade suivante où il sera rejoint par Luc Abalo, Michaël Guigou et Nikola Karabatic. Enfin, dans un match pour la troisième place globalement maîtrisé, l'Allemagne s'adjuge la médaille de bronze aux dépens de la Pologne.