Os irmãos João Veira e Sérgio Vieira tiveram uma prestação modesta nos vinte quilómetros de marcha, numa prova dura que acabou com dois chineses e um australiano no pódio. João ainda andou perto do grupo da frente, mas acabou em dificuldades e a perder lugares, cortando a meta na 31ª posição. O irmão Sérgio, mais na cauda da corrida, ainda recuperou algumas posições na ponta final, mas também não foi além do 53º posto.
O britânico Tom Bosworth, perseguido pelo japonês Diasuke Matsunaga, assumiram desde cedo a iniciativa da corrida, impondo um ritmo forte, perseguidos por um grupo de mais vinte atletas, a curta distância. João Vieira vinha na perseguição deste grupo mais numeroso, entre a 33ª e a 36ª posição, a cerca de trinta segundos do líder. Bem mais atrás, na 60ª posição, Sérgio Vieira vinha a perder mais tempo para o líder.
À passagem dos dez quilómetros a dupla de líderes começou a acusar o esforço. O japonês foi o primeiro a perder ritmo e a ser «engolido» pelo pelotão e, logo a seguir, o britânico também acabou por se alcançado, passando o chinês Zelin Cai a assumir o papel de «lebre». Boswort ainda ensaiou uma nova investida, recuperando por momentos a liderança, numa altura em que João Vieira, com uma passada regular, ia escalando posições na geral, chegando ao 28º posto, aos 14 quilómetros, a cerca de um minuto do líder britânico.
A corrida passava a ser comandada por um grupo de oito atletas, incluindo os protagonistas iniciais, o britânico, o japonês e o chinês.
Nos últimos dois quilómetros, os chineses Zhen Wang e Zelin Cai e arrancaram definitivamente, deixando desde logo definidas as duas primeiras medalhas, ficando o australiano Dane Bird-Smith com o bronze. Zhen Wang reclamou o ouro com o tempo de 1:19:14, mais trinta segundos do que o recorde olímpico (2012) e quase mais três minutos do que o recorde do Mundo (2015).
Quanto aos portugueses, João Vieira terminou a prova em nítidas dificuldades, perdendo quatro posições nos últimos dois quilómetros, no 31º lugar, a mais de quatro minutos do vencedor. Bem mais atrás, Sérgio Vieira terminou no 53º lugar, a mais de oito minutos dos vencedores, numa prova que contou que seis atletas desqualificados e outros três que acabaram por desistir.