One program that I have used that works well is called Synergy.
How it works is that you put a small piece of server/client software on each of the machines and configure them to point at each other.
One of the nice things about it is that it runs different platforms. In my case I had my WindowXP pc in the middle, A RedHat Linux PC to my left and sometimes my dual booting Dell Laptop to my right, all on my desk, all controled by the keyboard and mouse attached to the Windows PC.
Since I was the sysadmin for that company and am the slightly paranoid type I deceided that the connections should be encrypted. I installed a Cygwin SSH daemon on the Windows PC and forwarded the connection ports over SSH. A couple of 3 line bash scripts so I didn't have to remember flags and port numbers, and I was up and running.
It worked really well. I recomend it.
Some months ago on CNET tv there was a piece about controlling 2 computers and two monitors with one keyboard and mouse over IP with some free software. The setup worked just like having 2 monitors; the cursor would appear at one corner of the screen after moving off the edge of the other. In the demonstration, they even controlled a mac from a pc, just as I'm trying to do. Anybody know the name of this program?