I use my Raspberry Pi to write desktop programs in C#.Net. I use Mono to run the program and MonoDevelop to write it. Mono supports using System.Windows.Forms on the Raspberry Pi, but MonoDevelop only supports GTK for a gui. To use System.Windows.Forms, you need to code it directly instead of dropping controls on a form.
http://www.mono-project.com/docs/getting-started/install/linux/#debian-ubuntu-and-derivatives
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list
sudo apt-get update
sudo apt-get install mono-complete
sudo apt-get install monodevelop
Needed for debugging of console applications:
sudo apt-get install xterm
sudo apt-get dist-upgrade