Multi-source BFS is the same as single-source BFS, except you initialize the queue with multiple starting cells. The rest is identical: explore neighbors, mark visited, process level by level.
This pattern appears in many problems: fire spreading through a forest, water flooding land, virus infection spreading through a network. Anytime you have multiple simultaneous starting points, think multi-source BFS.
The core trick is pushing all sources into the queue before the BFS loop starts. After that, this runs normally. The distance from any cell to the nearest source is computed automatically as BFS spreads outward.