All .NET code in any .NET language can see all public classes that live in the set of files that are compiled together. In Visual Studio.NET you group the files together in a project. VS compiles all those files into a single assembly. In command-line compiling, you have to specify all the files you want compiled to the assembly.
You can reference other assemblies so your code can use classes that live in those other assemblies. When the compiler compiles your code, it will look in all referenced assemblies for classes that you consume in your code. In command-line compiling you must compile each assembly in the necessary order so that you have all the dependant assemblies compiled first. In a VS.NET project, you set up project references to the other projects you'll be using. VS will automatically determine the compile order to satisfy the dependancy requirements.
-
Peter