Purtroppo non è il mio campo quindi non posso darti molti suggerimenti.
Quello che è importante è che tu conosca bene un qualche linguaggio d'uso generale: i primi che mi vengono in mente sono il C o ancora meglio Java. Dopo di che dare un'interfaccia ad un programma che hai scritto non è molto difficile, si tratta (in linea generale) di associare le tue funzioni ad elementi grafici ed a eventi dell'interfaccia. In questo le librerie ti aiutano molto.
La mia unica esperienza in ambito desktop è stata Visual Basic + Visual Studio. Visual Basic è un linguaggio semplice che a volte si insegna anche a scuola. Con Visual Studio puoi facilmente progettare l'interfaccia grafica, si tratta di trascinare bottoni, checkbox, label, liste finché non viene fuori una UI. Poi ad ogni oggetto grafico associ qualcosa del tuo codice Visual Basic.
Nel futuro le cose saranno un pò diverse: il mondo si sta spostando verso uno sviluppo unificato di applicazioni web e desktop grazie ad Electron, quindi diventano importanti HTML, CSS e Javascript.
Qualsiasi campo di sviluppo scegli, su Youtube trovi un'infinità di corsi fatti molto bene. Ad esempio per Java ho seguito il
corso di questo professore. Conoscendo Java come linguaggio di base sono stato poi in grado di sviluppare applicazioni Android.