Of course, but I believe there is here a distinction between two slightly different cases to be made:
Inferring the return type of methods (i.e. `var x = MyMethod()`) does indeed reduce readability, I fully agree. This is one of the things I highly dislike in Python, for example.
On the other hand, `MyClass x = new MyClass()` does not contain much extra information compared to `var x = new MyClass()`, aside maybe from polymorphism-related information. Does it?