The XNA code gives people a bit perverted impression of 3d programming. In reality it is much more technical, not just mesh.draw(), etc.

Anyway, XNA is a nice package and simple enough for quite fast development of small and maybe even mid sized games. The approach XNA provides is quite practical, at least in my opinion.

However there still are some short comings, like no integrated dynamics (physics and stuff) library.

And even if you are a game programmer, it isn't really necessary to know the underlying implementation of 3d code. It might be useful but I believe that it would be a bit smarter to pick an engine and start making tons and tons of demos. Everybody loves to see demos, including the companies that are going to hire you in the future.

XNA is a kind of a hybrid case though. It isn't an game engine, but more like a framework for making an engine. A great tool for learning about making a game engine or making games in general.

As of relevance, I think XNA is becoming fairly relevant in the indie scene.