Этот вопрос обсуждали уже 1000 раз. Вот один из них:
http://www.imho.ws/showthread.php?t=37035 . Учить нужно тот язык, который позволит решать поставленные задачи.
А если задача просто тупо что-то выучить, то подойдёт любой язык.
Всё-же разъясню кратко что к чему:
C/C++ - наиболее деревянный язык. Это приводит к различным ошибкам и трудностям, но это же даёт широкую свободу при достижении определённого уровня мастерства. Хорошо подходит для разработки приложений требовательных к системным ресурсам.
Java/C# - языки славящиеся богатой реализацией ООП. Что значительно упрощает разработку программ. Также Java используется для разработки программ для мобильных устройств и веб-серверов.
PHP - скриптовый язык изначально предначначенный для разработки серверных приложений. Очень прост и удобен. Однако имеет не до конца реализованную модель ООП.
ASM - язык общающийся с процессором на ты. Подходит для программирования микроконтролеров и создания впечатлений перед девушками.