I like XNA and C#, but seeing as it has limited PC distribution options (and with my low funds, Xbox distribution is kinda out of my reach), I feel like I've gone and got trapped myself. Currently, I'm thinking about learning C++, as its not too different from C#, but I've got so much more options.
C# and C++ are extremely different. The reason I'm telling you is that I made that move, from C#/XNA to C++/SDL, and it was a nightmare. I thought it was going to be real easy, just changing things semantically, but boy had I forgotten about C++. I'm both happy and sad about the fact that I moved to C++/SDL. I've got broader horizons now and a more solid foundation but I've lost a lot of momentum.