C# is the result of Microsoft's .NET initiative telling Anders Hejlsberg that they needed a new object-orientated programming language. As with C++, the decision was made to have this new language be an 'upgrading' of sorts for C, mainly by tailoring that procedural language into an object-orientated one, and like C++, the name C# (pronounced 'C sharp') is a notation joke, only here it is referring to the sharp in musical notation lifting a note's pitch by one semitone instead of programming notation's incremental operator. The main difference between the two languages is that C# is more high-level, taking care of much memory management, etc. behind the scenes (somewhat like Java). This makes it faster to develop in for some, though performance is almost always slower than a program written in C or C++.
Anders Hejlsberg. Image Credit: DBegley.
Since its inception and creation, C# has been approved by Ecma and ISO as an industry standard, and has gained popularity for its versatility, being able to code everything from websites to console games, yet its older sibling C++ is still in more widespread use. However, C++ does have the advantage of being older so one cannot take these levels at face value. In addition to its versatility, C# boasts strong typing, imperative, declarative and functional programming disciplines. C# makes use of the following syntax regularly: semicolons, curly braces, variable assignments using equal signs and squared brackets.
Thanks to some striking similarities in syntax with other languages such as C, C++ and Java, James Gosling, who created Java and Bill Joy, co-founder of Sun Microsystems called the original C# an imitation of Java. However, since the release of the new Java upgrades and new C# upgrades, the languages have diverged in different directions. C# has gone through five releases in its lifetime so far, with the last one occurring in June 2013 as of the time of writing.