They way I've handled this is...might seem a bit of an overkill, but in my particular situation it worked fine. I have a pather object, which has the pathfinding behaviour - seperate from the real object I want to move. When I want to go someplace, the pather objects goes in that direction(NOTE: it is invisible and moves quite faster than the actual Object), updating its path frequently, and also leaving numbered nodes (set a var to nodes.cout + 1) on its trail on every now & then. Then I make the actual object follow the nodes (by updating its position by some pixels) always picking the lowest Node No, and destryoing each upon colliding with them. This way the pather can stop on every update, but as long as the actual object does not go faster than the pather, it would move quite smoothly.
Hope this makes sense.
CHeers