いろんなサンプル見て調べながら、

public void myReceive (){
   remoteEP = null;
   udp.BeginReceive(new AsyncCallback(ReceiveCallback), null);
}

private void ReceiveCallback (IAsyncResult ar){
   byte[] ReceivedBytes = udp.EndReceive(ar, ref remoteEP);
}

udpはUDPClient型
remoteEPはIPEndPoint型

こんなかんじでバックグラウンドでUDPの受信待機&受信をするコードを書いてみたんですが、受信待機状態を中断するにはどうしたらいいんでしょうか・・・良い感じのメソッドとかも見つからなくて困ってます。。。