If performance is not a concern, a quick and easy approach could be the UdpClient ReceiveAsync method:
https://msdn.microsoft.com/de-de/library/system.net.sockets.udpclient.receiveasync(v=vs.110).aspx
(UdpReceiveResult) , . :
private async void ReceiveBytesAsync(IPEndPoint filter)
{
UdpReceiveResult receivedBytes = await this._udpClient.ReceiveAsync();
if (filter != null)
{
if (receivedBytes.RemoteEndPoint.Address.Equals(filter.Address) &&
(receivedBytes.RemoteEndPoint.Port.Equals(filter.Port)))
{
}
}
}