You are asking which language you should program in.. on a C++ forum! I think you know where this is going to lead.
C++ plays the central role in the world of computer programming. What that means is that all other languages define themselves in comparison to C++. It means most languages try to have a C++-like syntax to have the best chance of appealing to the massive body of C++ programmers, which means most other languages are easiest to learn when coming from a C++ background. It means also that most (if not all) platforms, operating systems, software tools, etc. are either natively in C++ or provide direct (or very good) compatibility/interface with it. Finally, it means that C++ is key in having broad competences in programming.
The above are (sort-of) facts, that might not mean that C++ is the best to start with. In my opinion, it is. But I'm a bit tough. People say that C++ has a steep learning curve (at least at first), and I would also say it's very long, but mostly because C++ is not limited to OOP, it has two more levels, i.e. generic programming and template meta-programming (that other languages don't have, or only partially).
The criticism you most often hear of C++ is that it is too close to hardware (too low-level), too complicated to port between platforms, and that memory management (or the lack thereof) in C++ is too error-prone. Yet, most companies that use C++ for there development (which is the wide majority) will basically say the exact opposite: you can more easily put levels of abstraction in the code (hide the hardware-related stuff), porting applications between platforms is a breeze (if you use that right libraries), and memory management is not a problem for any programmer who is doing C++ professionally (basically, beginners have trouble with that, then they give up, and bitch about it later! But professionals don't even see it as an issue at all because C++ offers so many flexible options to deal with memory management issues, while other languages usually provide a one-size-fits-all approach that doesn't really fit well to anything). end of rant.
As for playing with GUIs and stuff. I would suggest you just download Qt Creator for example, and start building some little graphical program (a little calculator or something). Basic C knowledge should be enough to start, but you might want to keep a C++ book handy. You should certainly work through some C++ coding from book exercises or tutorials, but it sure can get a bit boring doing only command-line stuff. In that case, just mix the two: work through some online Qt or other GUI tutorial codes, and when you feel overwhelmed by the syntax or complexity, and you are not sure what is going on, then maybe switch to textbook exercises.. and come back to ask questions on this forum!
NB: if you find the learning curve of C++ too steep, then I guess Java would be the next one to try. Python might also suit your purposes. Both Java and Python are also generally well supported by both GUI tools and mobile platforms. If those three are all too hard for you, then maybe programming is not your thing.