Ingernirated: с изучения модели OSI и понимания как работает локальная и глобальная сеть, потом выучить язык программирования на котором написана платформа под которую собираетесь писать(для Linux/FreeBSD - это С/С++, для Win - это C#), причём выучить это не Hello World! написать, а понимать все тонкости реализации ЯП. Потом в зависимости от платформы смотреть как устроен сетевой стэк. Но на Вашем месте, в качестве п.2, я бы изучил параметры запуска wireshark из командной строки и использовал её, т.к если Вы собрались писать в одиночку, то на изучения ЯП у Вас уйдёт минимум лет 5, к тому времени всё может измениться.
Kirill Rud: удаляйте через diskpart.
list disk -- выводит список физических дисков
sel disk ЦИФРА -- выбираете НОМЕР диска с которого удалить разделы
list partition -- список разделов диска
del partition ЦИФРА -- раздел который нужно удалить