yes you can.
most of the games today work on this principle:
- you have a server that accepts connections
- players search match and when they are found by some rules they are put on 1 instance on that server
- they are all connected to the same IP with instance ID
- when someone moves (let's say it's a real time fps) - server
- processes data and predicts future movement and sends that data back to all players (except the one who's input it did)
- players see change with some delay (ping, depends on how far you really actually are from server and connection speed and so on (but this is not the point)
and that's about it. ofcourse server has to process data from every user, and it's a lot of job so server are usually hardcore PCs, dual xeon and so on, with good connection speed, etc.. also, they can handle more then 1 instance, for example - let's say a game takes 10 players, and server handles 100 instances - 1000 players on that server. also you have to know how much data you send to server so that if it's full it can handle, and how much it sends. for example - max data sent to server from each player could be ~100kB * 1000 players = 100 000kB = 100mB /s connection speed for download on that server so that's another thing to watch, but usually data packets are smaller and speeds today are big.
that's how it's done in real - time games. but in turn based games you have a bit of an advantage, and that is that you don't have to calculate prediction on server,
you just have to send new positions / game data to server, and he dispatches it to other players so they update their view. and you do it only on the end of the turn. the only thing to handle here is some combat between players / interactions and so on.
and yes, you can have a pc which creates an instance of the game, and people can join / leave while game stays in the same state as it is, but you've got to design the game carefully, and it's a tough job really.