I want create game server in my City

which can many people play at the same time, but not only one game, there can n games running.

i want to create 2 programs:

  1. for Clients (players)
  2. for server (game server)

So when someone would like to start a new game(host), first connect to the my server(game server),and Also Other people first connect to the server and join to this game, for Example warcraft lll game.

So can anyone tell me how can i make These programs ?

Note: I am familiar with C#, but i dont know Where do I begin ? and What should I use in C# ?

sry for bad type English :(