Intense Pathfinding 2 works in the most mainstream way. It uses Dijkstra to find a path from any point inside the level to another. After the path is found, the agent starts to move, but if another agent is in the way it will prioritize in walking around the agent than following the path. Once his way ahead is clear, he will resume following the original path to his destination.
Dijkstra is similar to A* and works with waypoints spread around the level. The obstacle avoidance (the second layer i discussed) works by storing every dynamic agent's position to an array and then doing some vector math to calculate if an agent needs to be avoided or not, and if our hero should turn left or right and how steep the turn should be, etc. All these are done to prevent any runtime traces to happen, cause traces are costly and bring your fps down fast when working on many agents simultaneously.
However, i think IP2 was a blunder because i didn't provide clear instructions on how you can use it in your project. So if you don't mind c-script and you can do without dynamic avoidance (the vector stuff..), you can still get
Intense Pathfinding 1 which is much simpler to install to your own projects.
So, whatever you choose, good luck with your project. I know pathfinding can be pretty frustrating, but don't let that bring you down..
Cheers,
Aris
PS: c_content isn't Pro only afaik... You might want to recheck if it works with your version, cause I'm pretty sure that it does.