微软想做一个平台,将多种语言共同编译成同一种中间语言,这样大家就可以在一个平台上用不同语言写代码了,交互也相对简单些。这样就有了.net framework 一般叫.net
c#就是跑在.net上的其中一种语言,还有vb.net,F#好像也是,其他的不清楚了。还有不是微软自己做的语言,比如ironPython和ironRuby,这两个跑在.net动态语言环境下,应该也叫做.net平台。总之.net会把这些语言都编译成一种中间语言cil,然后交给系统编译成二进制执行。
visual studio 只是工具,可以写c#,vb.net,f#自家的当然支持好,当然现在还有其他的比如android,ios的,node.js,javascript项目,html,c\c++,python等。
c#不只一种工具,还有sharpdevelop这种非一家的编辑器。
编译器在你装.net framework时已经装了应该,在c盘里,所以你可以用记事本写,用控制台编译他。