Subflow is a way to call an existing Flow from another Flow. In other words, you can say that Subflow is based on reusable component concepts; for example, you can use components in any Visualforce page. The benefits of components are that you only have to create it once and you can use and refer to it in multiple places.
Let's look at a business scenario. Sara Bareilles is working as a system administrator at Universal Containers. She has created a Flow for Opportunity creation in the previous example. She received an additional requirement (keep the previous requirement in your mind; at the end, we will use Process Builder to complete it) to auto-add the new Opportunity to Sales Executive Chatter group ...