Tirei uma licenciatura em Informática e quando entrei não sabia nada de nada de programação. A primeira linguagem que nos foi dada foi o C e acredita que é uma base poderosa para trabalhares nas restantes linguagens. Se souberes bem C depois aprender JAVA. C#, etc é bem mais fácil, embora ainda tenha muita coisa nova para aprender
Aconselho-te então a começar po C. Se o quiseres a maior referência é leres o livro "Linguagem C" do Luis Damas. É em português e é excelente. Aborda todos os pontos com muita precisão e fácil compreensão, cheio de exemplos e exercícios.
O que tu queres para programar é um IDE (Integrated Development Environment), ou seja, um ambiente gráfico catita para produzires o teu código, com autocomplete e muita informação e que te compile automaticamente o código
. Para trabalhares em C prefiro linux. Só precisas da consola, de um editor de texto (eu usava o gedit) e o gcc instalado.
Para Windows tens IDE's como o DevC++ ou o CodeBlocks.
Para JAVA recomendo o Eclipse (tanto Windows como Linux). É 5*
Mas tens o NetBeans ou o BlueJ (muito usado nas universidades).
Actualmente trabalho em .NET, mais precisamente VB.NET e ASP.NET. Há muita gente que fala mal das linguagens .NET mas é pura estupidez. É mais aquele hábito de criticar tudo o que é da Microsoft porque pensam que dá um ar cool fazê-lo. VB.NET e C# são muito semelhantes, embora tenha trabalhado pouco com C#, à primeira vista diferente em pequenos pormenores na sintaxe.
Para programar em .NET não há nada melhor que o Microsoft Visual Studio. Se quiseres uma solução gratuita tens o SharpDevelop.