I made my decision. I'm using C++ and SFML for my next game. C# is not a bad language in of itself, but I want to avoid MS controlled shit. I realize that using C# (or any .NET/Mono language) is just a ticking time bomb, especially given the direction that Microsoft is going.
SFML doesn't seem that bad once you get use to the C++ syntax (I never liked how C++ uses :: to separate namespaces). And it seems a lot easier compared to SDL.