As was mentioned, in a graph with *n* nodes (1) there could be *n*! paths and (2) if there are m paths, then DFS finds all in $O(mn)$ time. You may want to list only *k* shortest paths, where *k* is parameter you choose. In that case, see this [article][1] by Eppstein.

  [1]: http://www.ics.uci.edu/~eppstein/pubs/Epp-SJC-98.pdf