By using this site, you agree to our Privacy Policy and our Terms of Use. Close

First a disclaimer: I have very little C++ experience and have mostly used C# and Java as my main programming languages.

1. Which language is more widely used?

- C++ is more widely used.

2. Which is easier to learn and use?

- I would say C#, both because it's a simple language to start in, but also very well documented by Microsoft.

3. Which is better to learn for game development?

- C++ is probably the way to go, though you can work with C# as well. Minecraft was written in Java for example, so creating games in C# is definitely not out of the question.

4. Which is better to learn for software, programs and app development?

- It depends on what you want to do, but I would probably say C#. You can write webapps with it using ASP.NET, Windows Phone 7 apps are written in C# and Android apps are written in Java (C# and Java resemble eachother alot, so experience with one will usually help with the other), just as examples.

5. What's the major difference between them, anyway?

- C++ is much older than C# and is used across platforms everywhere. So C++ code can be run on any big platform you want, and the code is compiled directly to machine code, which means your code will be about as quick as it can reasonably be. C# on the other hand is much more limited in the platforms that are supported (both Linux and Mac can run C# code, but not as well as Windows), and C# is not translated directly to machine code, but runs in a virtual machine, meaning it is slower to execute than C++ code is.

Aside from that, you have the various differences in the languages themselves, which is more really a matter of preference than anything else. You can see some concrete examples here if you'd like.

Just ask if you want to know more.