Backend thì crack kiểu gì? Việc crack chỉ áp dụng cho client-side app thôi, chứ server-side ko có source code thì crack kiểu gì được. À mà hack được vào hệ thống server thì lại là chuyện khác nhé.
Đã là phần mềm thì đều có thể bị crack cả, không riêng gì phần mềm viết bằng C#. Nhìn vào mấy cái game AAA là biết, toàn viết bằng c++ đấy, bất chấp tất cả các thể loại anti-crack, anti-tamper mà vẫn bị crack như thường.
Phần mềm viết bằng C# thì dễ bị decompiled hay reverse engineered hơn bởi vì C# code không được biên dịch thành byte code, mà được biên dịch thành Intermediate Language (IL). Cái dạng format này rất dễ đọc và dễ parse. Sau khi biên dịch thành IL thì tên hàm tên biến trong source vẫn được giữ nguyên bởi nó cần thiết cho việc reflection. Cho nên C# apps đều rất dễ bị decompiled.
Có một cách để làm cho quá trình decompiling trở nên khó khăn hơn là obsfucators source code khi biên dịch. Obfuscators sẽ thay đổi tên hàm, tên biến, tên class hoặc thêm vào các hàm, biến giả khiến decompiler mất nhiều thời gian hơn để hiểu được source code. Nhưng nó không thể ngăn chặn được việc phần mềm bị crack.