Так как у вас нет контроллера домена и других сервисов (например WINS сервер) то значит у вас используется режим Рабочая группа, список компьютеров сети машины с windows собирают самостоятельно, т.е. они будут появляться/исчезать в списке не сразу. Имя рабочей группы для компьютеров должно совпадать, настраивается в свойства Компьютер -> Дополнительные параметры системы -> закладка Имя компьютера -> кнопка Изменить.
Чтобы пользователи имели доступ к папкам на другом компьютере в рабочей группе их имена и пароли должны совпадать, иначе будет появляться запрос пароля. По умолчанию, пользователи без пароля доступа к удаленной машине не имеют (это можно изменить в политиках этой удаленной машины). Так же в настройках общего доступа к папке необходимо прописать соответствующего пользователя (или 'Все') и права доступа. Права на файлы и каталоги для файловой системы NTFS так же должны учитывать доступ для этого пользователя.
Компьютеры должны быть подключены в одну локальную сеть, и у них должны быть IP адреса из одной и той же сети, например 192.168.0.1 - 192.168.0.255 при использовании маски 255.255.255.0. Обычно, при использовании роутера все адреса выдаются автоматически (там есть dhcp сервер), кстати windows 7+ могут использовать ipv6 адреса,..
p.s. совет, на windows 7 не выбирайте тип сети 'Домашнаяя', выбирайте 'Сеть предприятия'.
p.p.s. еще совет, исключите русскоязычные имена пользователей (и пробелы в именах), даже если локальная сеть будет работать, проблемы будут вылезать в играх и сторонних программах, не готовых к этому.
-----------
Для приложений в коде почти нет разницы при подключении tcp или udp, это просто флаг в методе, но нужно понимать что udp не дает гарантии что данные поступят в том порядке, в котором они ушли, в т.ч. могут вообще какие то пакеты не прийти,.. это вынуждает разработчиков контролировать это (это цена за более высокую 'производительность' udp по сравнению tcp).
Вам нет никакой необходимости создавать свой ip протокол. Я не знаю, кто вам сказал "если протоколы изменятся, не нужно менять всю систему", но возможно имелись в виду протоколы и форматы общения приложений, например в windows машины передают файлы по протоколу smb а в сетях linux администраторы могут выбрать nfs (поддержка которого в windows прекращена, да и ранее была ограниченной с багами, полагаю намеренно), эти протоколы не совместимы, грубо говоря это то как именно файлы будут передаваться по сети.
wifi и проводной ethernet - имеют различия на канальном уровне, это уровень ниже ip-протоколов, и не имеет никакой разницы для них и выше, данные могут передаваться как угодно, хоть на голубях (в rfc как я помню даже этот вариант был описан), хотя приложения могут учитывать особенности радио канала (скорость и пинги, например).