Originariamente inviato da Enrico81
Una domanda che nessuno ha mai fatto...
Le distro più facili inizialmente sono mandrake, suse, ubuntu, mepis, fedora, scegli te, per iniziare vanno bene tutte queste.
Per lo smanettamento bisogna vedere cosa intendi, se sei all'inizio partire con distro "difficili" potrebbe scoraggiarti, meglio le suddette. La riga di comando la usi su tutte, cambia solamente il modo di gestire i programmi (su linux si chiamano pacchetti tanto per abituarti), alcune distro sono un po' ostiche al principio.
Per la programmazione non ci sono problemi, sono supportati tutti i principali linguaggi, il problema magari sono gli ambienti di sviluppo. Su unix si usa principalmente il C, alemno a livello di sistema, per le applicazioni si usa di tutto. Il C# dovrebbe essere un liguaggio concepito per windows se non sbaglio e quindi la portabilità su linux e quel che è
Meglio il C, java o il più semplice python. Per l'ambiente di sviluppo dipende dal linguaggio e da quale DM/WM pernsi di utilizzare (gnome.kde, ecc...).
Per il C# potresti dare un occhio qui:
http://it.wikipedia.org/wiki/Mono_(progetto)