Doable, here is a version of Quake2 written in Managed C++ :
http://www.vertigosoftware.com/Quake2.htm
In general, .net languages are less efficient than native C/C++ in terms of the realtime computing requirement of game programming. But you can certainly do it if your algorithm is good enough.