Just a side note, I disagree, there is no reason why you would have to start developing a 2D game before 3D , 2D is not nessacarily a stepping stone into 3d design or gaming design for that matter, however there are 3D Design SDK's which would be the appropriate stepping stone.
Truvision offers a very nice SDK
You should also grab the DX SDK and as much documentation as possible
MSDN offers great support on using directX in vb.net to develop 3D games.
there is so much content to learn that it is easier to start from the ground up in 3D design, and not from a fully different design (IMO)