In my recently released game, Button Battle, I opted to use RakNet to implement simple networked multiplayer. I figured I should talk a bit about how that all went, since I would have enjoyed reading such an article myself… and frankly, I’m going to forget this all soon and I will have to read it later.
I chose RakNet because it has been around for a while (mature), it works on Windows, Linux, and more (cross-platform), and it is free for my purposes (affordable). I have my own networking library based on SDL_net that is certainly cross-platform and affordable, but I would be making a bad decision (personally, as a game dev, and as a business) if I put more time into the library instead of my games. SDL_net does what it does well enough, but there is a lot of work to do in order to get something out of it that can be used in games.