Antes que nada .net no es un lenguaje de programación, así que lo sacamos de la lista.
En cuanto a lo que comentas, cualquiera de esos lenguajes que comentas te permite conectarte a MySQL y/o otros gestores de bases de datos y todos tienes librerías para crear GUIs. De esos creo que podrías mirar por Java o C# (si no te molesta usar algo privativo), si quieres manejar bajo nivel definitivamente C/C++.
Yo en lo personal siempre recomendaré Python, me gusta por varias razones, pero es mejor que tu veas que tal te parece el lenguaje.
Saludos