
Однажды искал возможность подключиться из своей программы к WI-Fi сети, для кого-то может это и не проблема, а для меня это оказалось большим камнем на дороге. 
    Разделим наш проект на две части, условно, просто для того что бы лучше разобраться.
    Для начала создадим проект в Visual Studio на языке C# — WindowsFormsApplication и назовём его так как нам больше всего нравится, я назвал «Wifi».
    Часть первая: Поиск доступных сетей
Итак, закидываем на форму два котрола:
- ListView — назовём listNet, и добавим в него 4 колонки, просто для наглядности.
- Button — назовём btnRefresh
 
...
    ...
    WlanClient client = new WlanClient();
    foreach (WlanClient.WlanInterface wlanIface in client.Interfaces)
    {
        Wlan.WlanAvailableNetwork[] wlanBssEntries = wlanIface.GetAvailableNetworkList( 0 );
        //очищаем листвью, что бы не дублировать найденные сети при повторном нажатии
            istNet.Items.Clear();
        foreach (Wlan.WlanAvailableNetwork network in wlanBssEntries)
            {
            // создаём экземпляр элемента листвью
            ListViewItem listItemWiFi = new ListViewItem(); 
            // назначаем ему имя нашей первой найденной сети, в конце убираем нулевые символы - Trim((char)0)
            listItemWiFi.Text = System.Text.ASCIIEncoding.ASCII.GetString(network.dot11Ssid.SSID).Trim((char)0);
                // узнаём дополнительную информацию о сети и так же добавляем её в листвью, но уже в наш только что созданный итэм.
                listItemWiFi.SubItems.Add(network.wlanSignalQuality.ToString() + "%"); // качество связи в процентах
            listItemWiFi.SubItems.Add(network.dot11DefaultAuthAlgorithm.ToString().Trim((char)0)); // тип безопасности
                listItemWiFi.SubItems.Add(network.dot11DefaultCipherAlgorithm.ToString().Trim((char)0)); // тип шифрования
    Read more: Habrahabr.ru
QR: 