Unix has traditionally better than Windows when it comes to doing stuff on the remote machine. On the GUI side, Unix lets you run just a single app on a remote machine and have its window show up completely integrated with your desktop. On the command-line side, you can SSH to any box and it’s as natural as having a terminal window open on your computer.
The Windows story is much sadder. Remote Desktop is severely crippled unless you are running Windows Server in apps mode, plus you only get the full desktop instead of window integration unless you’re using Windows Server 2008.
Command-line side is equally fucked. Windows console apps don’t use a terminal emulation and there are no hooks using which an application could find out what another app is doing with the console. Thus secure terminal access of a Windows box is only good if you don’t try to use the Backspace key or god forbid Tab for command-line completion. And don’t even think about running an editor on a remote box.
Now the good news: There are two Windows SSH servers that make the whole experience work out OK. They are not perfect but they get the job done.
The free one is FreeSSHd. It has a few rough edges but it’s a usable. The commercial one is VShell, which is better but more expensive.
On the SSH client side the story is the same. The free one is Putty, but SecureCRT is better.
Set PowerShell as your remote shell and accessing a Windows box over the network becomes pleasant again.
Bonus: Once you install a SSH server you get SCP and SFTP. That means that you can use a program like WinSCP to access another computer’s file system remotely without bothering to set up Shared Folders in Windows. You are logging in with an username and a password so whatever directories your user can access you can access too.
Bonus #2: If you ever have to edit a file on a Unix box you can use WinSCP to edit the file locally in your editor of choice instead of suffering through vi.