Now, I'm not the kind of guy that gets into what language is better, C++ or Java, Java or C# and so on.. to me that's a waste of time. You find the most appropiate language to solve a problem and you use it. With that out of the way, let's continue...
I really liked a lot of things about C#, and I also disliked a couple of them, but not enough to make them worth mentioning. I liked how (relatively) straightforward it was to do almost everything, I liked making a custom control and having it appear on my controls toolbox then dragging that into my app and bam! it works. That was cool. With MFC it always felt as if I was fighting VS to get what I wanted to work, with C# most things just kind of worked like you'd expect them to.
Interoperability stuff took me a bit longer to learn, although when I figured it out I realized how not terribly difficult it is, just well, not what you're used to doing with C++.
I released Explore++ two days ago, and I'm pretty happy with the amount of downloads it has received so far, I'm sure that number will go up once it's posted on the cnet network of download sites.
Now that my first application is done, I'm planning my return into games. I'm thinking of making a simple 3D game using managed directx whenever I feel I need a break from working on SGE.
Speaking of which SGE deserves a post of its own, I'm tired of how incredibly difficult this architecture is proving to be when it comes to dynamic rendering of stuff, so I'm seriously considering ditching the deferred renderer and switching to an immediate renderer instead... but I'll post more about this later.