If you are already familiar with XNA, I'd recommend taking a look at
DarkGDK.
The functionality that it has is nearly identical to Darkbasic, and it works with C++.
Because it uses a C++ environment, it takes longer to learn than Darkbasic. It is free, has all the power of C++ and most of the fast prototyping power of Darkbasic if you understand C++ or similar languages.
Darkbasic is designed to be very easy to use and learn. It allows very fast development of games with quality results.
The cost is speed. What you'll find is that Darkbasic Pro is slower than XNA. So, you can't have games that are quite as complex before they begin to lag on computers. It is still quite powerful though. People have made multiplayer 3d games. People have made games with high end graphics.
Another consideration is that DarkBasic is DX9.0c. I don't expect any DX11 support for a long time, if ever. So, it will become obsolete in a few years. You still have a few years left before people stop paying for old tech though.
I tried FPSC, but abandoned it for Darkbasic Pro because it seemed to restrictive. If you're making a first person shooter, it'd work well. It's an engine for a specific type of game though. So, you'll never be able to make, say, a turn based strategy game with it.
The main books for Darkbasic are the "Hands on Darkbasic' books. I've never read them, but they seem to be high quality.
The language is easy enough to not really need books. Plenty of help in DBP itself and online in tutorials.