Ironically, going the other way seems to be more difficult. C# has more features to learn, but simply not using them until you learn them won't really hurt you. Going from C# to Java, on the other hand, has some traps. You can get yourself into hot water if you don't know, for example, that the boxed and unboxed numeric types have different equality semantics.