<p>How can I get the BSSID / MAC (Media Access Control) address of the wireless access point my system is connected to using C#?</p>

<p>Note that I'm interested in the BSSID of the WAP. This is different from the MAC address of the networking portion of the WAP.</p>

The following needs to be executed programmatically:
```
```
netsh wlan show networks mode=Bssid | findstr "BSSID"
```
```
The above shows the access point's wireless MAC addresses which is different from:
```
```
arp -a | findstr 192.168.1.254
```
```
This is because the access point has 2 MAC addresses. One for the wireless device and one for the networking device. I want the wireless MAC but get the networking MAC using
arp
.
Using the
Managed Wifi API
:
```
```
var wlanClient = new WlanClient();
foreach (WlanClient.WlanInterface wlanInterface in wlanClient.Interfaces)
{
    Wlan.WlanBssEntry[] wlanBssEntries = wlanInterface.GetNetworkBssList();
    foreach (Wlan.WlanBssEntry wlanBssEntry in wlanBssEntries)
    {
        byte[] macAddr = wlanBssEntry.dot11Bssid;
        var macAddrLen = (uint) macAddr.Length;
        var str = new string[(int) macAddrLen];
        for (int i = 0; i < macAddrLen; i++)
        {
            str[i] = macAddr[i].ToString("x2");
        }
        string mac = string.Join("", str);
        Console.WriteLine(mac);
    }
}
```
```