This documentation is archived and is not being maintained.

UdpClient.EndSend Method

Ends a pending asynchronous send.

Namespace:  System.Net.Sockets
Assembly:  System (in System.dll)

public int EndSend(
	IAsyncResult asyncResult


Type: System.IAsyncResult
An IAsyncResult object returned by a call to BeginSend.

Return Value

Type: System.Int32
If successful, the number of bytes sent to the UdpClient.


asyncResult is null.


asyncResult was not returned by a call to the BeginSend method.


EndSend was previously called for the asynchronous read.


An error occurred when attempting to access the underlying socket. See the Remarks section for more information.


The underlying Socket has been closed.

This method blocks until the operation is complete.

To perform this operation synchronously, use the Send method.

The following code example uses BeginSend to complete an asynchronous send of a server request.

public static bool messageSent = false;

public static void SendCallback(IAsyncResult ar)
  UdpClient u = (UdpClient)ar.AsyncState;

  Console.WriteLine("number of bytes sent: {0}", u.EndSend(ar));
  messageSent = true;

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.