C# – Object-oriented programming language
C# is an object-oriented programming language developed by Microsoft as part of the .NET platform. The development of the language is led by Anders Hejlsberg, who was recruited from Borland where he created TurboPascal and was chief architect for Delphi. Officially, the language is based on C++, but it is very similar to Java.
Program code written in C# is converted by a compiler into so-called CIL code (formerly called MSIL code), which is a kind of byte code which is then run in a virtual machine, CLR (Common Language Runtime). This is similar to how Java works, where the program code is also converted to byte code running in a virtual machine. However, the language change codes are not compatible.
C# is platform-independent as a programming language, although Microsoft’s development tools are only available for Windows. There are at least two different free implementations of C # compilers, within the Mono and DotGNU projects. However, these implementations are incomplete and lack some components in the .NET framework, so in practice, programs developed in C # and .NET can be locked to Windows. Recently, popular tools such as Xamarin have been developed, which means that code written in C # and .NET can to a large extent and up to 100% be used to create apps for both iOS, Android and Windows. These programs cost money, but since 2015 with Visual Studio you can develop to several platforms for free.