As an alternative to building a program from within Visual Studio, you may want to build at the command line.
The compiler can be invoked by typing the name of its executable (csc.exe) on the command line. You may need to adjust your path if you want csc.exe to be invoked from any subdirectory on your computer. See Setting the Path and Environment Variables for Command-Line Builds for more information.
There are no object (.obj) files created as a result of invoking the C# compiler; .exe and .dll output files are created directly. As a consequence of this, the C# compiler does not need a linker.
Parsing C++ Command-Line Arguments discusses how to specify command-line arguments.
csc File.cs
csc /target:library File.cs
csc /nooutput File.cs
csc /out:My.exe File.cs
csc /define:DEBUG /optimize /out:File2.exe *.cs
csc /target:library /out:File2.dll /warn:0 /nologo /debug *.cs
csc /target:library /out:Something.xyz *.cs