Проверьте VirtualBox для среды виртуализации. Ubuntu хорошо подойдет для Linux. Вы можете использовать VNC для удаленного доступа к вашей виртуальной машине.
Исходя из опыта программирования Windows с использованием IDE, я думаю, вы будете чувствовать себя комфортно с Eclipse CDT . Если вы все еще наслаждаетесь программированием на .NET, вы можете сделать это и на Linux. Установите MonoDevelop и Mono runtime, и все готово!