Falls du C# unter Windows programmierst (Was unter Linux meiner Meinung nach auch nicht viel Sinn ergeben würde, obwohl es mit erheblichen Einschränkungen möglich ist.
), dann empfehle ich dir
Visual Studio Express 2010 für C# - komfortabler kann man C# unter Windows nicht programmieren.
Unter Linux/BSD stehe ich auf
Emacs. Vi(m) ekelt mich ehrlich gesagt ziemlich an.
Viele Grüße,
haze303