Sometimes fillets work better on external corners than they do on internal corners. In this case, you would create a "negative" Body for the pocket, fillet it, and then assemble or subtract that from the main body.
Other times you may find in a very large solid that your performance will be faster if you can group features together (like in V4 with the "horizontal tree").
Still other times, it might be easier to create a bunch of bodies and then assemble them to the main body. Then if you change one of them, you don't have to update the entire tree, just the branch that you changed (and anything below in the main branch). Take for example a part with 100 holes. If you create the Pad, then create each hole one at a time (pretend for the moment that a Pattern doesn't work). You end up with a "vertical" tree that has no boolean operations. Then, if you change one hole near the top of the tree, the entire part has to update. This can take a very long time. Or what if you need to delete the first hole? If you had taken the common approach of selecting the functional surface of the solid for each hole, your entire solid will blow up - since each hole below relies on the functional surface of the hole above, which was deleted. In this case, creating a bunch of negative bodies outside of the primary body will leave each of the holes independant of the others. Another solution here, of course, is to extract the face of the solid first and tie each hole to that extracted face.