I've used all 3 intensively, and let me enlighten you,
C++ if you mainly want to develop AAA title games from scratch. Especially if you want to make a custom game engine. Or use an already available game engine which is written in C++ (Eg: Unreal Engine 4 )
C# for almost anything from mobile...