With Windows, Microsoft added all of this networking stuff as an afterthought, and as a very direct result of that Windows is pretty limited in the things it can do.
If you had an all Linux setup, it might be a pain in the *** to configure some of those things, but it should be possible to do what you want. But this is because Linux is based on the Unix design philosophy where the operating system doesn't really care if something is physically attached to the computer or halfway around the world on some sort of network. It just sends signals to whatever place you tell it, and it waits for a response. Windows, OTOH, needs to have some sort of software installed on the system for things to work properly, and unless that software supports some sort of network transparency, you're pretty much SOL. About the only exceptions are directories on a remote computer and printers. I have yet to see anyone manage to even manage to share something like a CD-ROM drive with another Windows system, let alone a scanner, PDA cradel, webcams, etc. You'll either have to buy two of each, or move them between systems.
Using a rather ugly hack of KVM like devices and stringing about twice the amount of cable, you could probably get about 90% of what you want. If everything worked perfectly, at the flick of a switch, you could essentially connect any of those devices to either computer, but only one could use them at a time.
VNC or Remote Desktop is another possibility, but IMO that one's more trouble than it's worth, even compared to the huge amounts of work for the other suggestion. Aside from VNC/Remote Desktop, you'd need some sort of seconday connection to be able to move files between the systems which would ultimately complicate things more for most people. With the cable, once you get it working, you don't have to touch it again.