For PC games, there are different concepts for servers. Here is a selection of possible variations:
A listen server is a server that is set up by a player, open for joining, and is listed accordingly by other clients when queried. Usually a listen-server is set up in-game, making it very easy to set simple server settings from the game's GUI interface. On the other hand, the advantage is that you can (usually) open a server quite easily and quickly, e.g. for a LAN session.
The disadvantage compared to a Dedicated server is that the server and client must run on the same machine, which can be too much load for weaker systems. Also the Internet connection's bandwidth might be too limited to host a game yourself in this fashion. In addition, in many cases the server is down as soon as the player who opened it withdraws from the game. Also more sophisticated settings are usually not available via a GUI (although very often accessible via in-game console commands anyways).
In principle very similar to a listen server, the only difference is, that the server is meant to be able to run completely without any opening player. This means that it can also continue to run with zero players. The advantage is that clients and servers can run on different machines, so that usually less performance is sufficient to serve the clients. Usually it does not feature any GUI which allows it to run even in a head-less environment. If the game needs a higher bandwidth, then having it run on a machine with a sufficient connection bandwidth might also be a good reason for using a dedicated server.
The downside is that it usually takes more effort to start, configure and maintain it. This configuration is very often done in configuration files, whose syntax the admin should know. It can also provide a kind of standard game play situation without having to re-do the corresponding settings every time you want to use it.
This type of server, strictly speaking, falls into the category of dedicated (but not neccessarily internet) servers, as they are generally used to manage listen server games over the internet. However, they are not game servers in the strict sense of the word, as they only have management functions and do not host actual games. Very often you have access only with a pre-defined username as part of an account. Lobby servers are usually game specific. A lobby server therefore only serves a certain game and no others. It might even filter out different versions of the same game (e. g. the master servers of Star Trek - Voyager Eliteforce). They present the information on open listen or dedicated servers, or that a listen server will be opened shortly. At the beginning of the game, the IPs of the game servers are passed on from the lobby server to the clients. It may still be necessary to have the corresponding ports forwarded in order to make the listen server accessible for players. However, there are also more intelligent games that use NAT hole punching via the lobby server giving the clients the right ports to which they must connect in order to reach their listen server.
The advantage here is that it is very easy to set up private servers and announce them. On the other hand, many of the games using lobby servers – for better or worse – depend on the availability of the lobby server (mostly run by the game manufacturers). Negative examples are GameSpy e. g. with Conflict Global Storm, or the WON servers e.g. for Star Trek - Armada 1. These games are often no longer playable on the internet because the servers have been taken offline. For some there are still alternative solutions such as direct IP inputs or GameRanger. However, most of these games are still playable over the LAN. A basic solution to continue playing over the Internet can be a VPN. Sometimes, however, replacement servers are set up by private persons and modified slightly to connect to these servers in the future. For Counter-Strike 1.6 lobby servers are still operated via Steam. For CS 1.5, for example, there is a replacement for the old WON servers, although these now hardly list any CS 1.5 servers.
An Internet server generally allows all IPs as clients. There are listen, dedicated and lobby/master servers. Dedicated servers are usually set up for internet servers. In principle, however, it also works when started as a listen server. Depending on the game, however, it may be that listen servers can only function as LAN servers. Behind a private router, a NAT port forwarding is important for internet servers (as long as they are not already listed as exposed host in a DMZ). Without the forwarding of the required ports, the server is otherwise not accessible from the Internet, but only from the LAN or an established VPN tunnel. A page on what has to be done for different router models is http://portforward.com/english/routers/port_forwarding/routerindex.htm.
In principle, a LAN server can be either a listen server, a dedicated server or a lobby/master server. The difference to the Internet server is that a LAN server can only be reached from the LAN. This means that only IPs from the server's subnet may join it. This rules out Internet connections, but allows, for example, establishing a connection via a VPN tunnel, if the configuration of the clients connected to the LAN via VPN places them in the same subnet.