The solution of this problem was given to me by the maintainer of the SDL2 C# wrapper on Github - flibitijibibo. He pointed out that he had read somewhere that Windows requires the [STAThread]-attribute for the main() in order to get the SDL2-joystick (I suppose also SDL2-gamecontroller) working on Windows. Sadly this does not change the situation if you are using Linux and Mono where with or without the above mentioned attribute it doesn't work. This is due to some hidden deep down handling of the hardware, which sadly translates to the API also.
[STAThread]
static void Main(string[] args){ ... }