Flow components allow you to treat a portion of a flow as a single node. This can be useful in several situations.
You may have a large flow with several distinct portions. For example, a troubleshooting flow for a complex product may have largely-separate sections for troubleshooting the different parts of the product. By converting each such section into a component, the overall flow can become easier to read and manage, and you can then handle each troubleshooting component separately.
Additionally, components can be reused across multiple flows. For example, you may have an escalation process that should be the same in each flow for all of your products. By creating a single standard escalation component and including it in each of your flows, you can ensure they all stay up-to-date. Updates made to a component are immediately reflected in all flows that use that component, meaning you can easily maintain any number of flows at once.