Pela área que eu tracei como objetivo. E por demanda.
Quando eu estava na faculdade eu queria ser desenvolvedor mobile cross-platform, e na época o Xamarin estava em alta. Estudei bastante C# pra isso. Meu primeiro emprego foi com C#. Foi minha linguagem principal na época.
Depois estudei mais para migrar para trabalhar na área de dados (machine learning, etc.). E pra isso o Python estava em alta. Agora, trabalhando na área, Python virou minha linguagem principal.
Mas se eu preciso fazer coisas de outras áreas, eu aprendo por demanda. Por exemplo, no próprio trabalho, às vezes tenho que fazer algo em JavaScript (quando o dev web sai de férias, por exemplo). Por hobby eu faço um app em Flutter/Dart (preferi aprender flutter do que usar Xamarin de novo, que virou legado, mesmo já com experiência), e já fiz coisas utilizando C++ por hobby também, pra IoT. Entre várias outras coisas e linguagens.
É sempre focando em objetivo, e por necessidade.
Mas aqui. Mesmo eu aprendendo Xamarin, não trabalhando com isso mais, e existirem alternativas bem melhores hoje em dia (como Flutter, React Native, ou KMP), eu não considero que foi um desperdício não. Pelo contrario. Como mencionado em outros posts, as boas práticas são transferidas de uma linguagem pra outra, e é meio que só isso que importa no final. Lógica de programação também nunca muda. Se continuar com a mesma única linguagem pra sempre, está tudo bem (sempre haverá sistemas legado precisando de novos profissionais, e esses são muito bem remunerados), e se precisar aprender linguagens novas, está tudo bem também.
Focar em uma é maneiro pra gastar mais tempo nas boas práticas ao invés de gastar tempo se preocupando com sintaxe, troca de contexto, etc. Mas isso virá alinhado com seu objetivo, e por demanda.