Windows
Sysinternals Process Monitor, Process Explorer, Registry Monitor, TCP Monitor/Viewer
These have been a lifesaver troubleshooting random network issues including firewalls, port conflicts, and hosts file errors. I've even used two at a time, such as Process Monitor and Registry Monitor to get around a .NET issue with an old piece of software that I wasn't able to otherwise install.
UnxUtils
The best of Linux on Windows. Useful for the many instances where something is infinitely easier to do in Linux than Windows but has to be done in Windows.
HTAs
I would prefer they were compatible with Linux, but I've used them to create monitoring consoles to periodically check system availability as well as keep shortcuts to local applications all in a web-like interface.
Linux
netstat -an
Linux
netstat -an
Used in conjunction with watch -n 1 it allows you to monitor application network activity and diagnose elusive problems.
netcat
My new favorite tool to test network connectivity to remote servers. Helped to track down a chronic issue related to source port filtering on a remote host.
grep -n ""
Useful for quickly finding the line number from a program exception.