Bien, no he querido comentar hasta ver que ya habian suficientes respuestas, gracias a todos, creo que estoy casi decidido, y necesito la respuesta de Akai (o de alguien que sepa C) que se que eres un entendido en la materia, tengo unas preguntas...
C
C++
c#
C
C++
c#
Mi opinión? Aprendes C a secas. De esa forma NO te dsitraes con la programación orientada a objetos.
Una vez tienes un cierto dominio de C, subes a C++, es C ampliado, y aprendes programación orientada a objetos. No recomiendo empezar directamente con un lenguaje de programación orientada a objetos, porque si estás aprendiendo de primeras a programar, complica las cosas.
Por tanto, después de C++, ya verás que es lo que más te trae, y el resto de lenguajes en principio simplemente serán cosa de mirar la sintaxis para ver como se hace esto o aquello, pero no aprender a programar, sino aprender a escribir para ese lenguaje.
¿Por qué lo veo así? Antes de entrar a la facultad vi por mi cuenta C, en el instituto. Una de las asignaturas de 1o de la carrera era también programación en C, y en 2o se pasa a C++ y se introduce la POO. C puede costar al principio, pero cual es el resultado de seguir ese camino?
Para mi, prácticamente java y python es cuestión de mirarme la sintaxis para cuando quiera mirármelos más a fondo de lo breve que los conozco. Lo mismo para cualquier otro lenguaje. C me ha creado una forma de expresar mis ideas en código, C++ me dio otro método para lo mismo pero orientado a objetos, y como ya dije, ahora simplemente es para el lenguaje X revisar la sintaxis para ver como se trasladan lo mismo. Pero no necesito aprender a programar cada vez. De la misma forma que tu no necesitas volver a aprender a hablar como cuando lo hiciste de niño, ya tienes una concepción del mundo y cuando aprendes un idioma lo único que haces es aprender a expresar dicha visión a través de las palabras del otro idioma.