C# FAQ 1.2 - What is C#?

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.

About the Author

Anand Narayanaswamy

Anand Narayanaswamy (Microsoft MVP) is a freelance writer for Developer.com and Codeguru.com. He works as an independent consultant and runs NetAns Technologies (http://www.netans.com)which provides affordable web hosting services. He is the author of Community Server Quickly (http://www.packtpub.com/community-server/book). Anand also runs LearnXpress.com (http://www.learnXpress.com) and Dotnetalbum.com (http://www.dotnetalbum.com) and regularly contributes product and book reviews for various websites. He can be reached at ananddotnet@yahoo.co.in


  • Basic programming

    Posted by morerajesh on 11/02/2006 01:09am

    Hello Mr. Anand I am well known to JAVA Plz tell me is it make easy to learn c# What are the basic syntax and concept what are the similarities betn java and c# Rajesh More morerajesh@rediffmail.com morerajesh@codeguru

  • Thank u

    Posted by rejish823 on 06/01/2006 01:49am

    I got some knowledge about the c#.net


      Posted by shyam.krishna2020 on 11/25/2007 02:00am

      hi i m SHYAM; from NIIT LUCKNOW i got such a wonderful knowledge about c# (version 2.0),thanks for this YAAR.

  • Comments

    Posted by Legacy on 02/19/2004 12:00am

    Originally posted by: anon

    >C, C++, and Visual Basic 6.0 had dominated the computer >industry for the past two decades.
    Is VB 6.0 really 20 years old?

    >Also, the syntax used by one language is different from the >other;
    Of course. This is not a flaw. Each Dot net languages still has its own syntax.

    >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#.
    Where's your data showing these reductions in development times? You make claims without supporting them.

Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • As the mobile enterprise marketplace expands and customer needs grow more diverse, Samsung recognizes that solution partners and developers play an essential role by continually innovating to meet their customers' needs. Samsung works to provide these developers and partners with the latest tools and resources needed to create these solutions. Read this program guide to learn how the Samsung Enterprise Alliance Program provides partners and developers with Samsung enterprise software development kits (SDKs) …

  • Moving from an on-premises environment to Office 365 does not remove the need to plan for disruptions or reduce the business risk requirements for protecting email services. If anything, some risks increase with a move to the cloud. Read how to ease the transition every business faces if considering or already migrating to cloud email. This white paper discusses: Setting expectations when migrating to Office 365 Understanding the implications of relying solely on Exchange Online security Necessary archiving …

Most Popular Programming Stories

More for Developers

RSS Feeds

Thanks for your registration, follow us on our social networks to keep up-to-date