Estos son los que se conocen como carpetas de instantáneas.
Simplísticamente ... y lo digo en serio:
Cuando ASP.NET ejecuta su aplicación por primera vez, copia todos los ensamblados encontrados en la carpeta / bin, copia cualquier archivo de código fuente (que se encuentra, por ejemplo, en la carpeta App_Code) y analiza sus archivos aspx, ascx en archivos fuente c #. ASP.NET luego construye / compila todo este código en una aplicación ejecutable.
Una ventaja de hacer esto es que evita la posibilidad de que el # de DLL de ensamblado .NET (en la carpeta / bin) se bloquee por el proceso de trabajo ASP.NET y, por lo tanto, no se pueda actualizar.
ASP.NET vigila los cambios de archivos en su sitio web y, si es necesario, comenzará todo el proceso nuevamente.
Teóricamente, la carpeta no debería necesitar ningún mantenimiento, pero de vez en cuando, y solo muy raramente puede que necesite eliminar contenido. Dicho esto, trabajo para una empresa de alojamiento, ejecutamos hasta 1200 sitios por servidor compartido y no he tenido que tocar esta carpeta en ninguna de las 250 máquinas durante años.
Esto se describe en el artículo de MSDN Comprender la compilación dinámica de ASP.NET
C:\Users\[Username]\AppData\Local\Temp\Temporary ASP.NET Files
.