>Find the shortest path from one node to all other nodes in a graph
That is precisely what Dijkstra's algorithm does. The limitation of that algo is that it only finds one path from the start to each other node, not all possible paths. As a really simple example, consider a 2x2 graph:
A---B
| |
C---D
If you want to go from A to D, Dijkstra will return _either_ A-B-D or A-C-D, but not both. The "k path problem" tries to find all paths from A to D