Look, I know you’re looking for C#, but if you want to try to dig deeper and go deeper into the business base one of the best materials on the subject and free - to get started - that if you have today is maybe this:
I would start with IPC (communication between processes) - If you have no notion yet
http://www.beej.us/guide/bgipc/
Then I would go to Socket TCP, followed by UDP and finally leave other types.
http://www.beej.us/guide/bgnet/
I also recommend reading Tanenbaum and Wetherall’s book on Computer Networks, but layers of transportation, which although not a simple read is the most refined in books on the subject of networks. Since book is not something auditable then people write a lot of disposable crap around and with quality label.
With a VM, a virtualized text-only debian you do a lot with it. Understanding the socket foundation, you easily apply in C#.
If it is in windows, it is not so different since it is basically copy, but it has some directives that have to start before starting to operate the socket in Windows and these additional ones are dispensable in the socket understanding.
I also advise the use of tools like TCP dump and nmap - Wireshark and Zenmap and both doc are very good. They’re like your network bugger, and look, without them it’s very difficult to find an error, it’s no use to print the variable there that the business is sometimes not so banal.
Other very good materials to understand the concept of socket are:
Excellent manual by GNU:
https://www.gnu.org/software/libc/manual/html_node/Sockets.html
The socket manual itself:
https://www.man7.org/linux/man-pages/man2/socket.2.html
Funcao Socket:
https://www.man7.org/linux/man-pages/man7/socket.7.html
With this it will give you a good basis of how it works, these manuals are not only explaining how to assemble the function, but a set of how it does to work.
There are other good materials. But these I gave you because they were the ones I used so much at the time that I did my tcc using making a game server, going through several, even when I wrote a guide on socket, if I could send along.