I want to create a communications server that all the clients can connect to. The only problem I'm having is deciding whether to use TCP or UDP. I want to be able to handle hundreds of clients at once (500 - 1000) and each one would have their own thread to handle them. Would either TCP or UDP be able to do this and if so which one would be suit my needs? If anyone has any ideas on a better way to handle lots of clients please let me know. Thanks.
EDIT: The server would basically be a message communication server. So all the game servers (clients) could send a message to it and it would broadcast it to all the other game servers (clients). I would want all message deliveries to be as reliable as possible.