Ti confermo che con il .NET, potrai fare solo programmi per ambiente Windows.
Se vuoi realizzare veri programmi multi-piattaforma, o ti indirizzi verso Java oppure utilizzi ambienti specifici che sono stati creati proprio per creare programmi che, pur con qualche variante, vengono compilato per girare su sistemi operativi diversi.
Ad esempio:
-
Xojo -
https://www.xojo.com
puoi compilare per Linux, Mac OSX e Windows.
Il linguaggio ha una sintassi simile al Visual Basic 6 ma è molto più avanzato, non è paragonabile perché è un vero linguaggio ad oggetti.
Ne esiste anche una versione base a poco prezzo in cui puoi scegliere opzionalmente il tipo di sviluppo se Linux, Mac OSX o Windows, poi vi sono le versioni che includono anche il Web (io ho la PRO che ha tutto )
-
Xamarin -
https://xamarin.com/studi
ti consente di programma solo per Android e iOS
l'ambiente di sviluppo è compatibile con il Framework .NET ed usa il linguaggio C#
Ma vi sono altri ambienti di programmazione, ti suggerisco di cercare e documentarti prima di fare una scelta.