title: Is there a way to configure receive/transmit buffer sizes for a network card via C#
body: <p>I'm currently working on a networked application for a Windows 10 PC. The PC must have 1 network adapter that is configured to use the maximum receive buffers, transmit buffers, and jumbo frames.</p>
  
  <p>I've looked at the Socket classes, and there is indeed a receive/transmit buffer, but this doesn't appear to be what I'm looking for. I'm looking to replicate the functionality in C# that is performed when adapter options are modified via Windows adapter options UI, i.e. the network interface, not a socket using that interface.</p>
  
  <p>So far I've been able to do a not-perfect read of jumbo frames via IPv4InterfaceProperties.Mtu, but I've been unable to find reliable information for setting jumbo frames, or reading/setting the receive/transmit buffer size.</p>
  
  <p>I have looked on SO, but many answers either use methods that are no longer supported or don't work on different PCs.</p>
  
  <p>Is there any way I can reliably read these properties on multiple PCs via C# (.NET Framework 4.6.1), and set them too? Any helpful pointers are welcome.</p>