Pathfinding (also known as pathing) is the system through which walking paths are determined. Pathfinding always makes a unit walk the shortest distance path to its destination.
Dota uses two pathfinding systems to move any given unit. Both pathfinders are used simultaneously when a move command is given.
The first is the long pather. This is the routine that finds the long path when selecting a destination to move to. This routine only considers things flagged as static blockers, like terrain and trees. It is also very general, much like a classic RTS pathing algorithm, working with a fixed grid size and will find paths without considering units at all.
The second is the short pather. This is the routine which tries to follow the path discovered by the long pather. The short pather is a more complex avoidance algorithm, as it does not work on a grid and it does consider stationary units as blockers. The short path is sometimes much different than the long path if there are units to avoid. The algorithm for the short pather uses "wall-tracing" which works with continuous space obstructions.
Pathing is the standard movement for ground units. They are blocked by units and terrain, and follow all of the rules in the pathfinding system.
Free pathing (also known as unobstructed movement or flying movement) lets a unit move anywhere. They can move through walls, cliffs, trees, and units. There is no limit to their movement and nothing will block them. Uphill miss chance does not apply to flying units.
Phased units can move through other units, but not through terrain and trees. For a list of abilities, see here.
A juke is when a player makes deceptive maneuvers with their hero to elude their opponents. It makes it harder for enemies to predict where they will be heading. This is used mainly to escape while being chased, or to make the enemy miss/misuse a spell.