Kenyan Rudisha, who set a world record to win gold in London, lost out to Ethiopian teenager Mohammed Aman on a chilly wet evening at Zurich's Letzigrund.
Double Olympic silver medallist Yohan Blake refused to be daunted by the conditions as he ran another fast time to win the 100 in 9.76 seconds, while Olympic 400 metres hurdles champion Felix Sanchez said he just wanted to lie on the beach after finishing fourth on his 35th birthday.
Rudisha, assisted by a pacemaker, sped away on the first lap but clearly went too early as the pack caught up with him around 200 metres from the end and Aman passed him on the curve to win in one minute 42.53.
"My legs felt tired and I cannot run well if the weather is not good," said the 23-year-old, running in his only post-Olympic race of the year.
"I hoped for a fast race here and I'm a little disappointed....... It was the rain which stopped me."
"It was a difficult race but I was in good shape," said Aman, sixth in London.
Double Olympic champion Usain Bolt had no such problems as he won the 200 in a very respectable 19.66 seconds, again making it look easy as he powered ahead of fellow Jamaicans Nickel Ashmeade and Jason Young.
Bolt jokingly made shivering gestures before leaving the opposition in his wake in familiar style.
"I'm happy to run a sub-20 time but I did not want to push my body," said Bolt. "It is the end of the of the season and I have to be careful."
Former world champion Tyson Gay was disqualified for a false start as Blake, who ran the joint third-fastest time in history in Lausanne last week, won the 100 metres in another impressive time.
His fellow Jamaican Nesta Carter was second in 9.95 and American Ryan Bailey third in 9.97.
"I am not at all surprised that after the Olympics I am coming out so strong and so fast because my coach has a plan for me," said Blake. "Next year I can even be better.
"And I am not surprised that I can run so fast in bad weather because I am a beast, bad weather cannot stop me."
Olympic champion Shelly-Ann Fraser-Pryce easily won women's 100 metres, beating Carmelita Jeter into second place after losing out to the American silver medallist in Lausanne and Birmingham.
Sanchez was beaten into fourth place despite a late charge in the 400 metres hurdles, won by American Angelo Taylor in 48.29.
"Now, it is hard for me to get motivation," said the Dominican Republic sprinter who won his second Olympic gold in the event this month. "I still need to come down from all the excitement in London.
"Today, I was tired, it was a long season and I need some vacation. After my last race in Berlin, I just need any beach in my country and I will lie down there for a week."
Olympic champion Sanya Richards-Ross won the women's 400 metres in 50.21 seconds ahead of Botswana's Amantle Montsho.
Croatia's Olympic gold medallist Sandra Perkovic won the women's discus but Olympic long jump champion Brittney Reese retired injured In her event, saying she had aggravated a tress fracture in her left ankle.
And Britain's Robbie Grabarz finished second to Olympic champion Ivan Ukhov in the high jump, but that was enough to ensure he could not be caught in the Diamond League competition this year.
- Yohan Blake