I decided to port .NETpad from Visual Basic to C# in order to get up to speed on the latter language as quickly as possible. My plan is to use the more sophisticated C# language in at least the next few projects, and I didn’t want to have to worry too much about learning the language at the same time as learning a new framework.
I’ve mentioned this work a few times, most recently in What I’ve Learned About C#, Visual Basic, Windows Forms, XAML, and WPF (Premium). But as I write this, my C# porting effort is just about done: I’m still using Windows Forms and the .NET Framework, so all I really needed to do was duplicate the .NETpad user interface with the Visual Studio designer and then rewrite my event handlers and custom methods in the new language. It was time-consuming and occasionally difficult, in part because of obscure language differences and in part because Visual Studio treats C# very differently than it does VB.