What is Microsoft.csharp.dll in .NET 4.0
This DLL is added by default in Visual Studio 2010 projects. What is this new assembly used for? It does not seem to contain much after looking at it using Reflector and Google does not seem to have much to say about it either.
It is used when/if you use the dynamic keyword in your project. The assembly contains the C# runtime binder.
The C# compiler has essentially been extracted out into a library so that it can emit, compile and run code needed to support the dynamic keyword. The first time you use dynamic in your code, this assembly (as well as System.dll, System.Core.dll and System.Dynamic.dll) will get loaded into your AppDomain.
Always removed it so far. No issues yet.