Although I don’t use C professionally, I enjoy reading low-level documentation because it sheds more light on how things work under the hood. Beej’s Guide to Network Programming is a great book focused on network sockets and the ways we can interact with them.
Things like select and epoll are the secret sauce that enables higher-level non-blocking IO abstractions such as Kotlin coroutines and async Rust. Anyone curious to see how the sausage gets made will find it worthwhile.
If you’re curious about the author, Brian “Beej” Jorgensen Hall has been writing software since the early 1990s and first published the guide around 1995. He now teaches computer science at Oregon State University-Cascades in Bend, Oregon.