Learning to code in c# is actually not that hard. If you can wrap your head around basic fundamentals like variables, operators, expressions, statements, functions and arrays, you're off to a good start (in any language). More advanced concepts like object orientated programming and data access can be a little trickier, but still not that difficult if you are dedicated and willing to do the reading.
The hard part, is putting it all together to develop complex (but still user-friendly) applications and doing it in a efficient manner that won't lead to costly mistakes.
Honestly, I wouldn't bother starting off with c/c++. You will just find yourself un-leaning a lot of stuff when you make the move to c#.
I found this ebook to be very helpful (and free) when I started with c#:
Code:
http://www.programmersheaven.com/ebooks/csharp_ebook.pdf
Just don't get lazy and skip sections because they seem boring. Take your time, and if you don't understand something, make sure you get it figured out fully before you move on to the next section (this is crucial, and you will save yourself massive, skull-splitting future headaches).