Учить надо программирование, а не язык. Если ты знаешь программирование, то сможешь быстро переключиться на любой язык. Если ты только умеешь писать код на конкретном языке, то при переходе на другой язык тебе придётся начинать обучение практические с нуля. Есть универсальные языки, на которых действительно можно сделать всё (ассемблер, С/C++, Ada и т. д.). А есть языки, предназначенные для определённых областей программирования (Java, C#, PHP и т. д.). Но проблема универсального языка в том, что разработка на нём потребует куда больших времени и усилий, чем использование языка, адаптированного под твою задачу.