How do make a multiplayer game to play with friends?

Explain > Multiplayer, networking, dedicated servers? free, free not?

So I recently started with multiplayer, not knowing anything with 1+ years experience in Unity and 2+ in programming with C#.
So the network solutions I found were Fishnet, Mirror, Riptide and DarkRift 2. But from my understanding, you can not play with your friends across miles with only Unity and one of these “networking-things” You need something like “Playfab” so you need Unity > Mirror > Playfab to create a multiplayer experience as Sea Of Thieves

You forgot Netcode for GameObjects, Unity‘s own solution. :wink:
And no, your assessment is incorrect. With any of these you can connect with friends on the same server (port forwarding may be required on host‘s router).
Maybe just try one of the NGO or Fish-Net example projects and ask a friend to join. Most likely service you need is a relay server so users can join without the host having to setup port forwarding.

These are only those solutions that are made specifically for unity, there are many other network solutions that are presented many times better.

RakNet
SlikeNet (same Raknet but improved and maintained so far)
ENet (I recommend it!)
LiteNetLib
LidgrenNet
SteamSockets

For a pretty complete networking solution list, see this spreadsheet:

It’s the same spreadsheet with feature comparison posted here:

Here is a Series I started a few years ago when I was making a multiplayer game. It might help you out a little: