C and C++ are general purpose programming languages, if you can write c or c++ you can virtually do anything, i suggest you stick with console applications as you start, you can do graphical stuff later when you'd mastered the language very well. Although C++ looks like C, it's quite a different language and it was rewritten from scratch with C compatibility in mind but with so many enhancements, the most visible improvement with C++ is that it is object oriented, this is a different programming paradigme from procedural C. I would like to emphasise the fact that the C WASN'T, the C language still IS !! i personnally do a lot of work in this language wich i find to be a very powerfull tool of work, although i am familiar with C++i still write C daily, however as a beginner you can start C++ directly, most of us still use C because one way or another it's the language we master the best. Visual C++, is just an integrated development environment (IDE), it only runs in microsoft windows, this is an inferior software platform, if you want to do some real development you should use a higher grade system such as GNU/Linux or FreeBSD.