Trinidad and Tobago's Keshorn Walcott threw a national record 84.58m to claim a surprise Olympic gold medal in the men's javelin.
"The double Olympic champion Thorkildsen has failed to get on the rostrum and that is a huge upset in javelin throwing. A surprise win for Keshorn Walcott. Everyone else struggled with the wind and he has walked away with the gold medal."
The 19-year-old led after the first round with 83.51m and improved on that with his second throw to win the event.
Ukraine's Oleksandr Pyatnytsya was a close second with 84.51m, while Finn Antti Ruuskanen's 84.12m put him third.
Norway's Andreas Thorkildsen had won gold at the last two Olympic Games but finished sixth.
Walcott's victory was unlikely but he is the world junior champion.
His win also helped Trinidad and Tobago to its first Olympic title in a field event.