Scenario: You compile or recompile a site, then use Visual Studio’s built in “Publish” feature to send that precompiled site to a web server. You even choose “Delete all existing files before copy”. All the files are deleted and you’re new files are copied, except… the old files reappear on the server even though you don’t have local copies of them.
Why? IIS is caching the assemblies and when you copy them back out, IIS just replaces them with the cached copy.