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.