NVidia have zero relation to UDK. UDK is made by Epic.
NVIDIA provides UDK for free and other their libraries.
Monogame is more or less an exact clone of XNA. Porting between the 2 is usually a case of switching your using statements and your references. Plus you gain mac and linux support (and more). On supported hardware it uses SharpDX as its backend, this is a DirectX wrapper (supporting 11), otherwise it uses OpenTK as its backend which is an OpenGL wrapper.
There are excellent VB.net > C# converters out there. Any library that works with C# usually works fine with VB.net.