زبان C# نسخه کامل شده زبان های C و C++ است که در آن سعی شده از ویژگی های خوب زبان های دیگر الهام گرفته شود و در عین حال کاستی های آن زبان ها برطرف شود.
ایجاد یک برنامه در C# بسیار راحت تر از ایجاد برنامه در محیط C++ است ولی با همه این سادگی C# زبان قدرتمندی است بطوری که تمام کارهایی که در C++ میتوان انجام داد در C# نیز می توان انجام داد.
بعضی مواقع کدهای C# طولانی تر از کدهای C++ است علت این است که C# برخلاف C++یک زبان Type-Safe است یعنی در C# زمانی که نوع داده ای یک متغیر مشخص شد آن متغیر دیگر نمی تواند به نوع داده ای دیگری تبدیل شود علاوه بر این محدودیت های دیگری نیز هنگام تبدیل یک نوع داده ای به نوع دیگر وجود دارد که باعث می شود کدهای C# نسبت به کدهای C++طولانی تر به نظر برسد ولی با این حال کد های #C از پایداری بیشتری برخوردارند و خطایابی آن آسانتر است.
C# از چارچوب NET. استفاده می کند بنابراین هرنوع برنامه ای را می توان با آن نوشت ولی اکثر برنامه هایی که با نوشته می شوند جزء یکی از موارد زیر هستند
برنامه های مبتنی بر ویندوز
این نوع برنامه ها مانند office دارای ظاهر آشنای ویندوزی هستند این نوع برنامه ها بوسیله فضای نام مربوط به برنامه های ویندوزی در چارچوب NET. نوشته می شود این فضای نام شامل کنترل هایی از قبیل دکمه های فرمان و نظیر آن است که بوسیله آنها می توان رابط گرافیکی برنامه را طراحی کرد.
برنامه های مبتنی بر وب
این برنامه ها شامل یک یا چند صفحه وب است چارچوب وب دارای یک سیستم قوی برای ایجاد صفحات وب و تامین امنیت آنهاست. این سیستم ASP.NET نام دارد و شما می توانید با استفاده از C# و ASP.NET برنامه های مبتنی بر وب ایجاد کنید.
سرویس های وب
وب سرویس ها یک روش جدید و جالب برای ایجاد برنامه های توزیع شدنی مبتنی بر وب هستند با استفاده از وب سرویس ها میتوان هرنوع اطلاعاتی را بین برنامه های مختلف از طریق اینترنت منتقل کرد.
در هریک از موارد بالا درصورت نیاز به ارتباط با بانک اطلاعاتی از سیستمی به نام ADO.NET در NET. استفاده میشود.