In my current project I have both Pathfinding and an Entity Component System. Entities that need to be able to perform actions have a command component that handles queuing and execution of commands such as "Move to X,Y". When a movement command begins executing, it first runs an A* search to find the path to the destination, and from then on it just moves from tile to tile as appropriate.
My A* implementation knows nothing about Entities or Components, it just deals with tiles and movement costs.
Back when I started on my current game project I evaluated XNA but was disappointed because I wanted more control over what was going on. I ended up going with SlimDX, which is a wrapper around DirectX which can be used in .net. It doesn't hold your hand at all, it's exactly like the blank recipe book analogy cited by Code_Grammar, but that's exactly how I like to roll.
That said, it was fairly daunting to get a working game engine up and running. But now that I've put in the effort I'm really proud of what I've achieved. If I ever get more heavily involved with games development it should provide a good base skill set.
I'm not saying its the right way to go for you, something like Unity or Monogame might be more appropriate, but thought I'd add it to your potential options.