We found that the Socket.Receive(byte buffer) method can block, if there is "enough" activity on the socket. Wireshark confirms the incoming datagrams, even if Receive() doesn't get them anymore. The runtime v3.5 does not have the issue and I couldn't repro this in IL2CPP. This also happens in beta 4. I sent a link to an updated repro case but it doesn't how in fogbugz yet. Not sure if it's in the system. I can PM that anytime.