Originally Posted by
wuiyang C# for beginner, C++ for advanced coder
I disagree with this. Programming languages are tools, and like any tool, you'd usually want to choose the best tool for the job.
Of course, asking someone to use C++ who can't will only lead to disaster, but that isn't relevant if all you're asking is which to learn.
If you're looking to create an e-mail client, an interface for an online service, or something like that, then even the most advanced programmer will prefer C#. In general, C# emphasizes programmer productivity, whereas C++ emphasizes software efficiency, but C++ requires more work, it doesn't hold the programmers hand, and it is harder to do well.