I spent a good deal of time developing a game concept with XNA/C#; however, since I have lost the all the files (made a mistake using Dropbox on many computers!) and with the recent anouncement that XNA is not longer supported by microsoft... I was just wondering what you think I should try next?

I have had a few glances at JAVA with LWJGL and the syntax seemed very close to C# (if not identical) but with everyone saying C++ is 'harder', maybe it would be a good experience to try that?

Thanks for your time, I'm sure you get these kinds of questions all of the time

There's not really a reason to stop using XNA if you like it. They may stop updating it, but it still works. Otherwise, MonoGame is an open source, multi-platform alternative based on XNA so it should be easier for you to pick up.

There's not really a reason to stop using XNA if you like it. They may stop updating it, but it still works. Otherwise, MonoGame is an open source, multi-platform alternative based on XNA so it should be easier for you to pick up.

I agree with this. If you're concerned about continued support (or want to develop multiplatform games), switch to MonoGame. I don't see much of a reason to use Java; the languages are extremely similar and C# has better libraries, so you'd be breaking even at best, or downgrading at worst. If you're looking for a challenge and/or are a masochist, you could always take the opportunity to try C++ and DirectX.

I've been a C/C++ programmer for a while and am now switching to C# for my current needs. To be honest, learn the C++ for the knowledge, but stick with C# for development. The industry seems to really be pushing these more managed languages, along with all other niches of software development. Good luck to you.

I have known about Monogame for a while and it did look interested, however the majority of my coding knowledge has been gained through using XNA it seemed very overwhelming to use since there is not proper documentation for beginners like there is for XNA.

Also, the last time I queried that line thought they suggested to build your game within XNA/Visual Studio and just port it over (HOW you did that wasn't obvious); is that not a good thing to do anymore?

or learn C++ do whatever you want, if you want results quickly though Id say stick with XNA/MonoGame.

Also, the last time I queried that line thought they suggested to build your game within XNA/Visual Studio and just port it over (HOW you did that wasn't obvious); is that not a good thing to do anymore?

I think its safe to just start projects off with using MonoGame initially. A stable 3D supported version has released (which uses OpenGL on the desktop though). You can use the in-development DirectX windows desktop platform though by downloading the repo on monogame's github.

If you decide to use SharpDX, you'll get quickly introduced to the horror or HRESULT-s (yeah, I know there is a perfectly sound technical reason for their existence). SharpDX is a nice binding, but it does work on top of COM. And when something goes wrong in the underlying API, you get an exception that gives you an HRESULT. If you're lucky, you'll get an error message. If you aren't, you'll just get a hex code that you have to look up no Google to check what it means. Also, much unlike regular .NET exceptions, HRESULT-s just tell you that *something* went wrong, but you don't get proper stack trace - everything dies at the COM boundary. And since COM is native, you can't just as easily decompile it with Reflector and see how stuff's implemented and why your things are not working - you are solely left at the mercy of Google and the official documentation.

The positive thing about SharpDX is that you do get far superior text rendering via DirectWrite, and so far as 2D is concerned, you can draw primitives, gradients and strokes.