Hi, C# có bài so sánh ở đây: https://en.wikipedia.org/wiki/Comparison_of_C_Sharp_and_Java
Về cơ bản thì mình thấy:
C#:
Ưu: chạy nhanh hơn java vì được built trực tiếp sang mã máy (Java phải built sang binary code của máy ảo trước, sau đó nó dùng khái niệm JIT Compiler để built sang mã máy hệ điều hành đang chạy), cộng đồng thì siêu to, được support bởi công ty cũng siêu to (là thằng Microsoft), framework mạnh mẽ, tool bao la (20 năm bao nhiêu coder bán mạng cho Microsoft rồi còn gì), Windows user cũng nhiều nên app market cũng siêu to.
Nhược: chỉ dùng cho dev trên Windows (có mono C# nhưng không thể bằng stereo được ^^), framework mạnh nhưng đóng nên chẳng customize được, dẫn đến coder ỷ lại quá nhiều vào fw, kiến thức core không thể sâu như dân Java hay PHP được (với hàng ty tỷ FW và hàng đống design pattern phía core để tham khảo). Tất nhiên, cũng có nhiều dev port một số fw # chứ không dùng .NET fw, nhưng hầu như chẳng mấy thành công (đã dùng C# là phải dùng lib của .NET fw, hehe. Đã làm web là cứ phải asp và IIS, toàn đồ của Microsoft, bán thì rõ đắt mà dek có lựa chọn #)
Còn gì nữa nhỉ, ai bổ sung cái.
(mình thì ghét nhất cái .NET fw toàn dùng static function, chiếm bộ nhớ dã man)
(hồi xưa mình là anti MS_fanboy, nhưng giờ lại quay trở lại học để làm việc ^^)