MDX is rather old, and XNA hasn't gotten an update in a number of years. But MonoGame is definitely getting support and updates still, and 98% of the things are the same between MonoGame and XNA. My tutorials for XNA are pretty comprehensive and up-to-date. The MonoGame ones need some attention, especially in relation to the content pipeline stuff at the beginning. But otherwise, everything should be the same.
SlimDX and SharpDX work at a lower level. Just barely above DirectX. (They're both C# wrappers around DirectX, so you're still doing DirectX programming without having to resort to C++.) DirectX is a very complex and often frustrating library to use (not that it's any worse than OpenGL). For a beginner, I'd definitely recommend something at a higher level.
MDX, XNA, and MonoGame all fit that bill, but as you mentioned MDX and XNA are probably not the right choice today. MonoGame probably is.
There are, of course, even higher level game engines that you can use. They give you less control over how you do stuff, but take care of more of the "boilerplate" code that you need when first starting. I'm not a huge fan. I like having a bit more control over things. But they do definitely work and work well. Unity is probably the #1 choice in the C# world, but there are others (Paradox, Delta Engine, etc.)
So yeah, there are a lot of choices. Almost too many. I'd say the starting point is to try out a little of Unity and a little of MonoGame/XNA and see what flavor you like better.
A great game developer will have experience across this whole spectrum, from working at the raw DirectX level (or SharpDX) to the midlevel stuff (MonoGame/XNA) to the full-fledged game engines (Unity). You learn different things at different levels, and that helps to flesh out ideas on how to best make different types of games. I'm not saying you should tackle all of them on Day 1, but that if you spend time trying things out, it's not wasted time by any means.