Còn phụ thuộc vào mục đích của bạn nữa chứ, sao mà chỉ vì “code sướng hơn” mà học được. Giả dụ như bạn muốn lập trình Android, nhưng bạn thích Swift hơn, ghét Java thì cũng chịu.
Còn về Java, nói là Write once, run anywhere nhưng thực tế nó tàn nhẫn hơn nhiều. Bạn không thể chỉ cần một Java Runtime Environment thích hợp là cứ thế vác một ứng dụng từ hệ điều hành này sang hệ điều hành khác dùng được đâu. Đa nền tảng ở đây đơn giản chỉ là hỗ trợ trên nhiều nền tảng thôi. Mà như thế thì C/C++, Python,… cũng đầy ra đấy.
Cơ mà dù sao thì nó cũng là một ngôn ngữ rất phổ biến, học cũng không hề uổng phí đâu.
Về C#, nếu bạn thực sự thích nó thì cứ xác định là trung thành với Microsoft nhé. C# Xamarin có hỗ trợ mobile nhưng sự thực là không gì bằng hàng chính chủ nhé.