http://www.techist.com/showthread.php?s=&threadid=31371
Sure.
I'm a big fan of C#, and it's still an incredible language even if you're not using SQL.
To be honest though, it all depends on what you're wanting to do with the language. I enjoy C# because it can do just about anything. In short I'd look at it like this:
Windows Applications:
1. C# (Very easy to use, very powerful)
2. C++ ( Much more difficult. Very Fast, Ver Powerful)
3. Java ( Fairly Easy, Slow, Platform-Independant)
Cross Platform Applications (for *nix programming)
1. Java ( Tries to be Write-Once-Run-Everywhere)
2. C++ ( If standards are followed, can be cross platform)
3. C# ( Still "technically" only for windows...but the Mono Project has brought C# to the Linux platform)
For *nix applications
1. C++ (Used in MANY linux/unix applications)
2. Java (used in quite a few because of it's cross-platform nature)
3. C# (Very new to the Linux world becuase Mono is still new)
For Console applications
1. C# ( Extremely easy )
2. C++ ( Greate flexibility, can get very complicated, extremely fast)
3. Java ( meh )
Ease of Use
1. Java ( Very easy )
2. C# ( Basically "Java" + "C++" very easy, very poweful. Adds some more complicated features than Java, but you don't have to use them)
3. C++ ( Extremely complicated)
Flexibility (In terms of what they can do)
1. C# / C++ ( These two pretty much tie )
2. Java ( a little behind the times )
Speed
1. C++ ( very fast )
2. C# ( quite fast, but still uses a CLR )
3. Java ( Getting faster but still kind of slow )
Game Programming (Commercial quality)
1. C++ ( Quake III was made with C++ )
2. C# ( Since you can use DirectX 9.0 and greater now, you could do something really awesome with C#. But nothing yet has been done with it, because C is much faster)
3. Java ( Used as the main scripting languages in a few games. I wouldn't try making anything bigger than an applet though
)