public static IPAddress GetDefaultGateway() { var card = NetworkInterface.GetAllNetworkInterfaces().FirstOrDefault(); if (card == null) { return null; } foreach (var address in card.GetIPProperties().GatewayAddresses) { if (address.Address.AddressFamily == AddressFamily.InterNetwork) { return address.Address; } } return card.GetIPProperties().GatewayAddresses.FirstOrDefault().Address; }