Right tool for the right job is the key here!
C++ is very useful if you want to have the advantage of speed ( CPU intensive applications? ) ( Cross-platform, Low-level access)
C# allows faster prototyping and developing time which is to prefer as a beginner/indie developer.
Depending on what you want to do, either languages are as good. C++ is not by any means better than C#!
In most cases i find C# better than C++ though that is just my opinion
Of course ASM is the BEST language! ( Or you know raw binary-code! )
Thanks again for the help and sorry to pester everyone with more questions
but... is it easier to learn C# or C++ after learning the other one?
So say I learnt C# fairly well and wanted to learn C++ would it be easier to learn? (or vice-versa )
C# is a much friendlier language to learn, even just for the reason the built in libraries are so much more capable, although their are many other reasons why C# is a friendlier beginner langauge as well.
I thought it would be fairly similar. Like transferring rounders to baseball or something
Is the new and different things in each language certain "techniques" or "adjustments" sort of?
Not really. C# is a much newer language, and it frankly learned from C++ "mistakes" in a manner of speaking. Now, some people don't view those mistakes as mistakes, or in some cases those "mistakes" are incredibly useful when programming in a different way. C++ has been called the ultimate generalist language, and thats a pretty valid statement with all the various pluses and minuses attached.
Truth of the matter is, you are going to need a foundation in one language before you understand the differences in the other language. For example, templates and generics are massively different between languages, but until you figure out what one is, the other will be irrelevant to you. The same is even true of memory allocation... these days, with things like smart pointers, C++ isn't as big a deal with regards to the memory management hand grenade. On the flipside, people think C# provides you with fire and forget memory management, which in non-trivial code is very much NOT true. That said, until you know about garbage collection or memory management, or whatever, you won't understand the difference. You can't really argue the merits of single vs multiple inheritence before you understand what either is and what they accomplish.
That said, basic programming tasks like manipulating strings, opening a network connection, reading a file, etc... are many times easier on C# thanks to the libraries it ships with. What takes 10 lines in C++ can often be done in 1 or 2 lines of C. This is what makes C# so much more beginner friendly.
I understand what you're saying and yes it is understandably easier to do something in 2 lines rather than 10
Last questions (hopefully )
I'm sure it will be hard to get an answer to this but how long will it take to learn C#?
That saying I'm an above average (academically) teenager, I have a good understanding of I.T and I generally find it easy to grasp the concepts of new things My aim would to have a good, if not great understanding of C# by Christmas time-ish, if that sounds remotely possible.
Is there any recommended compiler for C#?
Is it a good language for coding 2d games on IOS devices such as iPod and IPhone ( the main reason I want to code really )?
Thanks for more help