The /target:library option causes the compiler to create a dynamic-link library (DLL) rather than an executable file (EXE).
/target:library
The DLL will be created with the .dll extension.
Unless otherwise specified with the /out option, the output file name takes the name of the first input file.
When specified at the command line, all files up to the next /out or /target:module option are used to create the .dll file.
When building a .dll file, a Main method is not required.
Open the project's Properties page. For details, see How to: Set Project Properties (C#, J#).
Click the Application property page.
Modify the Output type property.
For information on how to set this compiler option programmatically, see OutputType.
Compile in.cs, creating in.dll:
csc /target:library in.cs