Sockets на C# отлично работают, можешь написать сервер в виде консольного приложения (или на том же юнити с отрубанием графики). Под web - WebSockets)
А еще есть хорошая либа, которая поддерживает и unity -
Lidgren network - этакий reliable UDP.
А что касается абстракций над передачей данных - тут придется самому писать свой менеджер пакетов (и придумывать свой протокол, например с использованием бинарной сериализации), версионирование этого всего, и т.д. либо смотреть в сторону
Photon