você não aprenderá corretamente nenhuma linguagem de programação sem um objetivo claro. Sabendo o que você quer fazer com ele, você pode decidir qual programa se adequa às suas necessidades.
Por exemplo, digamos sobre c #.
O C # pode executar programas da Web, console, executável autônomo, programa de jogos, programa Silverlight e programa móvel. Embora a sintaxe seja igual em quase todos os casos, ela funciona de maneira diferente em todos os cenários. Por exemplo, um executável autônomo mantém suas informações até que sejam descarregadas ou o programa seja concluído. Enquanto um programa da Web, as informações são destruídas toda vez que você carrega uma página e, no silverlight, você passa a maior parte do tempo lutando contra um arquivo xml.
E segundo, não gaste seu tempo com idiomas exóticos (Haskel por exemplo), falando em empresas, existem muito poucos programas que valem o seu esforço: java (rei da colina), c # / vb.net, php e sql.