 <p>Unfortunately since UDP has no concept of a "connection", there is no way for the OS (or you) to distinguish between "old" data and "new" data.</p> <p>Specifically on Win32, there's an <code>SIO_FLUSH</code> ioctl which you can pass to <code>WSAIoctl()</code>. I haven't tried this, and it seems that it's only relevant for the send queue.</p> <p>See also: <a href="http://stackoverflow.com/questions/15980438/clean-window-socket-internal-buffer">clean window socket internal buffer</a></p>