Depth-first-search (DFS) is useful when only one “front” can be maintained. For example, when a robot explores an environment (such as an office environment), DFS makes sense because the robot can only be at one place at any particular time.
Breadth-first-search (BFS) is useful when we want to find a least cost path from a vertex to another vertex.