The C# (pronounced "C-Sharp") programming language is one of the most powerful object-oriented programming languages developed by Microsoft. According to them, "C# is a modern, object-oriented language that enables programmers to quickly build a wide range of applications for the new Microsoft .NET platform, which provides tools and services that fully exploit both computing and communications." Actually, C# was originally codenamed "Cool" before being released as a beta in 2000. Microsoft then released different versions of the language including the latest release of C# 2.0. With each release, the product shipped with improved features for developing secured and scalable applications along with high quality documentation and code samples.
Prior to .NET, C, C++, and Visual Basic 6.0 had dominated the computer industry. The main drawback with these languages is that a programmer has to devote a long time to develop and deploy an application. Also, the syntax used by one language is different from the other; hence, it took a long time for a programmer to migrate between two different languages. Programmers were searching for a programming language that would not only reduce the development time of applications but also to attain good productivity. These difficulties were eliminated with the introduction of C#. This is because all .NET languages, including C#, commonly follow the Common Language Specification (CLS) and target the Common Language Runtime. Moreover, C# is relatively simpler language than C++ as it doesn't contain pointers and templates.
Some of the notable features of the C# programming language are namespaces, type-safe variables, multi-dimensional arrays, jagged arrays, operator overloading, indexers, delegates, versioning, attributes, and overriding. C# also comes with features such as "pass by reference" and "pass by value" for parameters, XML-based documentation with special comment tags, and integration with COM components developed using Visual Studio 6.0 and other non-.NET languages. Moreover, C# 2.0 supports new features such as Generics, Anonymous Methods, and Partial Types. Further, the key specifications for the C# language have been reviewed and ratified by an international standards organization called the European Computer Manufacturers Association (ECMA). For more details regarding this topic, refer to http://msdn.microsoft.com/net/ecma/.
You can develop console applications (executed from the command prompt), Windows applications, ASP.NET Web Applications, ASP.NET Web Services, and Mobile Web Applications, Class libraries, Windows control libraries, smart device applications, and Web control library applications by using the C# language. In addition to these applications, you can also create setup files for your C# projects using by Visual C# .NET. You will learn about the development of each one of these applications in forthcoming FAQs.