Poi c'è molto più materiale per quanto riguarda directx che OpenGl
E' qui che ti sbagli, di materiale sulle OpenGL c'è ne anche troppo
Se non ti piace c# puoi sempre utilizzare gli altri linguaggi c++.net vb.net j#.net. Non so a cosa si collegato il fatto che non ti piace c# perchè ormai al giorno d'oggi utilizzarne uno o l'altro c'è poca differenza se utilizzi la piattaforma .net. A dirti la verità a me quello che piace di più è propio c# .
Se si lavora sempre con prodotti Microsoft ...
C# non è pienamente multipiattaforma ( si c'è MONO ma non supporta XNA ), puoi vuoi paragonarlo con C/C++ ?