Hace tiempo hice un chat en .net, es más aconsejable usar windows sockets porque con ftp estas creando mucho tráfico inútil, además de que cuanto más largo sea el archivo más tardará.
En mi sistema un servidor actua como servidor "espejo", toda información recibida por un cliente conectado se reenvía a todos los demás menos al emisor. No hay logs del chat en un principio, pero es facilisimo implementarlo, además controlarás perfectamente desde el servidor a los clientes conectados.
Eres el segundo que me dice que lo haga con Sockets no tengo ni p.. idea de que es eso xd buscare información muchas gracias a todos por las respuestas y a los moderadores por haberme movido el tema me equivoque de lado.
Saludos