Hello!
Real quick, iphone apps tend to be coded in a language called Objective C, which exists in the family of C languages (which C++ is a part of). The C programming language is all very very similar and works very well for making games.
One of these languages in the C family is C#. I'm glad you brought up that language, by the way, in your question. You can consider C# as a "managed" version of C++ (which means you don't have to worry about being the one responsible for direct mangement of the computer's memory...which means WAYYY less crashing games when you are programming). In addition, Microsoft has something called XNA Game Studio which can (no doubt) give you the fastest head start in game programming. Check out the attached link to download both Microsoft Visual Studio Express (the program you will code in) and XNA (the library of tools and code you will use to make your game in C#).
Even if it is your first time programming, there is a wealth of information and tutorials on XNA game development alone (check for books, the internet, and especially msdn.com. There are also video tutorials all over the internet). And its all free. For a small fee, you can sell these games you make, online.
If you aren't too interested in C# and xna specifically, game programming takes a lot of work making things from scratch, so you'll want to look at getting a good grasp of any object oriented programming language near the realms of C and java. Enjoy!