If the protocol is known, you can utilize Wireshark to capture and analyze the packets.
If the protocol is private, you can only get raw bytes, which takes much more efforts to analyze.
Fiddler is designed for HTTP based protocols only, so it is not as general purpose as Wireshark.