I really recommend TGF, since you have to be quite advanced to appreciate most of the newer features of MMF (gimics aside) and MMF is pretty intimidating at first. Dispite the fact that it's almost identical to TGF it has a few quirks that can seriously confuse before you're familiar with it. A lot of veterans use TGF and then port their games across to MMF to add gimics and benifit from the superior file compression, so it goes to show that you can make a good game on TGF.
Why the hell am I on the computer at 1 in the morning? No, don't answer.
C++ - the "official" and only way to make "real" games
I found that comment rather interesting. I would argue that MMF is another step in the evolution of software development - we had Assembler, then C, then C++, each being a more high-level language than the first. (Of course, that list misses out several million other languages). To make changes to a language, we have to drop to the next lowest level. In a similar way, to make changes and extensions for MMF we have to drop to C++.
As each generation of language has made it easier for humans to understand, isn't MMF a natural development for the way that software will be developed? Isn't an application developed in MMF just as real as one developed in C++?
Of course, my opinion is slightly skewed because I can't use C, as I'm too stupid to be able to use pointers.
Also, I've been writing a software requirements document all day and I'm in essay mode just now, so the above might not make much sense - still, just my thoughts.