区别很多,首先是托管和非托管的区别,托管代码不允许进行对内存的操作,而是由固定的垃圾回收机制来完成,而C++则不然。其次C#不需要这样一个平台。最后C#是完全面向对象的,C#的世界里万物皆是类,不存在一个超越类以上的函数或是变量。C++也是面向对象的,但是仍然保留面向过程的语言特点(比如说全局变量)。最后,C#摈弃了C++中多重继承等不易掌握的特点,代之以接口等,是变成变得更加轻松和简便。