In keeping with what you have done so far, here are a few tips to get you started. First, when the client receives a connection it stops listening for new connections.
TCPL.Start()
TCPL.BeginAcceptTcpClient(AddressOf OnConnect, Nothing)
Calling these two lines after one client connects will allow another client to connect. Second, the client should not be responsible for starting the server. By doing this each client has it's own server. The clients will never be able to send a message that is displayed on other clients when they each have their own server. Third, I would move server.vb into it's own project. That way the two are not coupled. These steps will allow the server to accept multiple clients. At this point multiple clients will be able to connect and the server will see the messages from each client, but the clients will not be able to see each other's messages. I will leave the last hurdle to you.