Хоча платформа .NET і передбачає можливість використання різних мов програмування (наприклад, C++ та Visual Basic), спеціально для неї група програмістів фірми Microsoft розробила нову мову програмування, яка одержала назву С#. Ця мова дозволяє у повному обсязі скористатися можливостями, що надає технологія .NET. Фактично, C# являє собою гібрид різних мов програмування, від кожної з яких вона взяла найкраще.
Будучи спадкоємицею мови С++, мова С# використовує подібний до неї синтаксис, проте позбавлена неоднозначностей, які допускали компілятори С++. Багато спільного має також із мовою Java, яка створювалась спеціально як мова, що дозволяє реалізовувати застосування, які можуть використовуватись в різних операційних системах. Її створення як раз і було намаганням розв’язати так звану проблему «перенесення» комп’ютерних програм в інше операційне середовище. Ця можливість була реалізована за рахунок компіляції у два етапи. На першому етапі Java-компілятор створює машиннонезалежний так званий «байт-код». Цей байт-код виконується віртуальною машиною Java (JVM – Java Virtual Machine). Вона являє собою спеціальну операційну систему. Отже, програма мовою Java може бути виконана на будь-якій платформі, де реалізовано JVM. А оскільки така реалізація була відносно не складною, то JVM були достатньо швидко та успішно реалізовані у досить різноманітних програмних середовищах. Проте мова Java не вирішила проблему міжмовної взаємодії в програмах.
На відміну від Java, С# генерує код, що може бути використаний лише у середовищі виконання .NET – так званий керований код (managed code). Зокрема, це передбачає автоматичне керування пам’яттю та відсутність потреби працювати напряму із вказівниками на адреси у пам’яті, що дуже зменшує кількість ймовірних помилок при розробці та використанні програми.
Ще одна приємна риса, яка відрізняє мову С# – можливість одночасно створювати і програму, і документацію до неї у форматі XML. Для цього треба лише використовувати спеціальний тип коментарів та після завершення роботи згенерувати окремий файл із документацією до програми (ця можливість вбудована у середовище розробки.)
Компонент .NET Microsoft Visual Studio – це інтегроване середовище розробки програмного забезпечення, яке забезпечує абсолютно комфортний інтерфейс для створення С#-програм.