quizas yo te pueda ayudar, no tanto como gabio en C# pero yo basicamente me tope con C# editando servidores para un juego de rol asi que entiendo relativamente como funcionan, pero primero deberias preguntarte como haras para mostrar las animaciones en un windows form, tambien el como lo desarrollaras en cuanto a diseño y eso pero no es tan importante.
para el servidor si es conveniente una consola, porque practicamente nadie la vera mas que tu, pero tambien puede ser un windows form y crear un thread con un ciclo while.
lo proximo, supongo que entiendes mas o menos lo que son los paquetes cierto? porque es vital para la comunicacion cliente-servidor.
Respecto a los sockets para el servidor, vagando en los foros dedicados a editar servidores como el que edito yo (y en donde se crearon las primeras en C# y todas ^^ que son unas 30) encontre un sistema asincrono que al parecer funciona bastante bien, es el que usa actualmente uno de los servidores mas prosperos de Conquer y mantiene cerca de 500 jugadores conectados casi todo el dia, la verdad yo no soy muy bueno en eso, pero se usarlo, si quieres te envio la clase y un ejemplo de como usarlo, para conectarse desde el cliente puedes usar un TcpClient.
Si aun no tienes muy claro todo, puedes tratar hacer un juego de 3 en raya en linea (tic tac toe, la vieja, gato, etc...) en el que 2 clientes se conecten a un servidor, si hay mas se elijan al azar, etc...