New Zealand served up a resounding win over South Africa while Zimbabwe shocked former champions Sri Lanka in surprising results from two of Wednesday's four cricket World Cup warm-up matches.

Elsewhere, Pakistan beat England by four wickets in Sydney, and Australia had an easy win over the UAE.

Cup co-host New Zealand continued its impressive recent form by beating favoured South Africa by 134 runs in Christchurch. Brendon McCullum made 59 and Kane Williamson 66 as New Zealand scored 331-8 in 50 overs before bowling out South Africa for 197.

Sri Lanka's confidence took a big hit when Zimbabwe surpassed its total of 281-3 in only 45.2 overs, led by Hamilton Masakadza's unbeaten 117 from 119 balls in Lincoln, New Zealand.

Michael Clarke returned from hamstring surgery to captain Australia and top-score against the UAE with 64 runs as the hosts, winning the toss, won by 188 runs. Australia made 304-8 before restricting the UAE to 116 in 30.1 overs.

At the Sydney Cricket Ground, Misbah-ul-Haq scored an unbeaten 91 as Pakistan beat England.

England won the toss and totaled 250-8, with Joe Root making 85 and Gary Ballance adding 57. But Pakistan reached 252-6 with seven balls to spare.

Source: AP