I'm running VNC (RealVNC.com) locally over TCP/IP and love it. I also run it through a VPN when I am remote to hit my desktop on our corporate lan, and then connect to corp servers from my desktop using VNC (so I NVC to my desktop and then VNC from there to another server )... despite the amount of network traffic, it's still pretty snappy (my remote connection is through a cable modem).
Obviously, if you need to get into bios or see startup output, you need a kvm.
About VNC... when you VNC into a Windows box you get the whole desktop (I've only done Windows -> Windows recently). On a Linux box, I think you get an XWindows shell, and not the actual desktop... it's been a while since I did that, though, so I'm not 100% sure on that one.