C# isn't supported on Official SDKs AFAIK, only on the Indie Game Channel via XNA.

Learning C before C++ isn't necessary IMO.

Outside of games, I don't really C++ being the most common language. Higher level languages seem to be bigger demand. C++ is the most used language is mostly because it is the only one that SDKs support for consoles. (Although there is a shift towards using scripting languages for logic outside of engine code). On PC, you find there is a much wider range of languages being used because the development time is quicker.

There are libraries for Lua that allow you to use it without writing a framework. LuaPlayer for the PSP and Love2D for PC/Mac.