Yo Yo, my advice to you is that if this is your first programming language then stop! Go for something a little less daunting first, if you end up liking that then move on to C# or C++.
My suggestions would be:
- Perl scripting
Wouldn't really agree with that I'm afraid. Each to there own but C# is a perfectly viable option to learn to start with, you'll learn OO principles that the above most likely just won't teach you and it's used far more for big programs out there than the above. Of course you could start with any of the above (despite my personal disliking of python!) and they'd be viable options, but nothing wrong with not starting with them. Perl I especially wouldn't pick to start with if you're interested in doing lots of big programming stuff, it's a great language for bodging scripts together but if you want to learn about good code design (which you should get into when you start coding) then Perl is completely the wrong place to be!
C++ is a different kettle of fish altogether though - wouldn't touch that to start with, that would be over-complicated.
Only suggestion I'd make in terms of change would be to perhaps consider Java, it's very similar to C#, gives you the advantage of a cross compatible platform and it's a bit more beginner friendly in the sense that it'll stop you doing stupid things that C# won't always spot. There's also much more educational material on it because of it's open and cross platform nature.
In terms of tutorials - be careful. There's a lot of dodgy ones floating around and my advice if you're interested in taking this seriously would be to get a good beginner's book on the subject and follow it through. In terms of a mentor, if you get a good book you should really be ok to work through the best part of it yourself - but if you do get stuck then feel free to post questions here!
Ask if you want some good Java teaching material, I've done a fair bit of work in that field so could point you to some good and reliable sources.