This setting has always confused me:
What exactly does the Bitmap Caching option in the Windows Remote Desktop Client do? I understand that it is supposed to improve connection performance, but how? Is it really that much of a difference?
Caching bitmap means that images and other bitmap resources are locally stored on the client computer for reusing them later. This way, the remote server or PC doesn't send images twice reducing the amout of data sent and saving your bandwidth usage.
The option makes particularly sense for slow (low bandwidth) connections, less if you connect to a machine in the same local area network.
If you enable the option the Remote Desktop client caches bitmaps into a BMC file located on the client hard disk in (example for Windows XP)
Note (interesting if your computer is part of a domain): since the cache folder is stored in a "Local Settings" folder, it won't be replicated as part of a roaming user profile.
It caches bitmaps, like the desktop background, icons, etc. :)
Here's a Microsoft article for you.
From the document:
It's likely that some of that is now out of date, since the doc was produced 9 years ago, but hopefully it still gets across the reasoning behind bitmap caching.
Since RDP relies on transmitting paint commands to the client, instead of just raw pixels from the virtual screen, eventually paint commands will come that say "Paint this bitmap on the screen", and for those commands, a copy of the bitmap will be sent to the client as well.
That setting will cache the bitmaps for those commands, so that the next time a command comes with the same bitmap, the bitmap doesn't have to be transmitted. This speeds up the RDP protocol a lot over a slow connection.