En terminos generales, es bueno aprender mas de un language (de hecho diria que es fundamental para volverse buen programador).
Pero es importante saber mezclarlos. No tiene mucha gracia aprender Java y C# (muy parecidos). Es mejor aprender lenguajes opuestos, o que te introduzcan a formas muy diferentes de hacer las cosas.
Por ejemplo, luego de usar Delphi, empeze con python:
http://www.python.org/. Delphi y python son muy diferentes, pero complementarios.
Con Delphi, aprendes mucho sobre estructuras estaticas, la importancia de predefinir todo y de usar lenguajes estaticos y compilados, ademas de RAD. Python es inverso: Es dinamico, es scripting, es definir por codigo y no por IDE.
Otros combos interesantes para combinar con Delphi:
Haskell:
http://learnyouahaskell.com/
Te quita el concepto de la programacion OO y te introduce a su opuesto natural: Programacion funcional
C# o Java: Para conseguir un trabajo
Ruby: Metaprogramacion y magia. El opuesto en estilo de python, tirando mas a lenguaje funcional. Muy popular entre desarrolladores web
Go (
http://golang.org/): Programacion multi-hilos, mas simple.
------
Pero es ideal saber manejar bien uno primero antes de aventurarse a aprender los demas. Lo que aprendes en la U tiende a ser una muy escueta introduccion a la programacion, y hasta que no desarrolles software no vas a enfrentarte a los desafios necesarios que construiran la experiencia que necesitas para poder realmente decir que sabes programar.
Asi que yo empezaria por saber a donde te quieres enfocar, y un proyecto X en concreto. Luego ejecutarlo y terminarlo.