UdpClient works fine in 5.5 but not getting data in 5.6 and 2017

In the Unity Editor, using the blocking call UdpClient.Receive() when UdpClient.Available > 0 works just fine in various versions of Unity 5.x, seemingly up to 5.6 where Available is always zero. Ditto with Unity 2017.

The editor reports Mono 2.0 in all cases (tried the later experimental version in 2017.1 which reports as 4.8 but no change).

It doesn’t seem to be a Mono or .NET problem as the same receiver call works fine in test apps outside of Unity.

I hope to get this working in all versions of the Unity editor, as it’s specifically for editor use (reading Gear VR controller output and displaying in the editor).

Any insights greatly appreciated.

same problem here, anyone explain why and how to fix?