Quote Originally Posted by Shaggy Hiker View Post
I agree with both of you. I certainly found the move to VB.NET easier because I could copy whole functions from VB6 programs into a VB.NET program with minimal changes. On the other hand, I also found the move to VB.NET a bit harder because it was so similar to VB6, and yet not the same, that I was trying to think about VB.NET in terms of VB6 rather than coming up with a different mental model for the new language. Had I moved to C# directly from VB6, I wouldn't have had any expectation that my existing mental models were still relevant, so the similarity resulted in some frustration.

Still, I feel that the benefits of the similarity outweighed the frustrations of the similarity.
This is the EXACT experience I had moving as well. I could start writing code right away because my reflexes were all correct from the very beginning. However this was both a good and bad thing because when I bumped up against the architectural differences, I had to re-train myself somewhat. For example, I had to drop little habits and pick up new ones like using .Length instead of UBound and using AndAlso instead of And. It's not that these habits were bad per se but they were suboptimal given how different the underlying architecture is.