rxvt is a better alternative to the default Cygwin cmd.exe setup. GNU screen is a full-screen window manager that, among other things, allows you to quickly switch between shell sessions. I had some trouble figuring out how to use them together along with bash, so here are my notes on how I did it.
In your Cygwin Windows shortcut put:
Target: C:\cygwin\bin\rxvt.exe -e bash --login -iStart in: c:\cygwin\bin
At the end of your ~/.bash_profile, put the following line:
Also, in your ~/.screenrc file (if you have one), make sure your shell command does not have a dash "-" in front. The dash in front will make screen treat the shell as a login shell, executing your "screen" command in your .bash_profile recursively. (see this thread on the zsh mailing list).
As a side note, I'm also trying out rsync. After only a small amout of use, I tend to agree with others that it rocks.