Basically network traffic limiting is made in the LSP ( Layered Socket
Provider ). More advanced programs use device drivers for that...
So no .NET here.
AFAIK you can develop an LSP or device driver endpoint ( unmanaged ) and
control endpoint ( managed ).
If you will consider device driver solution - there are already sample
drivers that can nearly satisfy your needs...