简单的可以用select,效率要求比较高的话用epoll, 给你提供几个简单的关键字你去搜索一下怎么用:FD_SET,FD_ISSET,select. listen状态的套接口其它套接口一样在fd_set中使用,只是listen套接口在可读时,用accept接收。
你首先要将发送的消息打个包,包头可以自己设,可以是你的前四个字节,至于异步怎么用你在百度搜索C# tcplisener 一堆