Long story short: Whichever works best for you.
First off, what’s the difference between a subdomain and a subdirectory?
A subdomain is a “third-level domain” that’s part of the original top-level domain. Think of something like “shop.thewordpressguy.net” compared to the original top-level, which is “thewordpressguy.net”.
A subdirectory would look like this: “thewordpressguy.net/shop”.
So, in essence, this is more of a structural thing. As with your top-level domain, you can just as easily install WordPress and run sites from a subdomain and/or a subdirectory.
Search engines see subdomains as separate sites whereas subdirectories are recognized as additional content to your domain. But, don’t get confused, content is still king when it comes to search engine ranking so there is not necessarily an advantage SEO-wise in opting for a strategy using subdomains vs. subdirectories.
In my thinking, subdomains are most useful to those businesses who need to differentiate their lines of business. Let’s use Google as an example, who is structured into some 40+ subdomains. There is the top-level domain; www.google.com, of course, then there are the subdomains; www.images.google.com, www.maps.google.com, www.mail.google.com, etc., etc. Each site has its unique visitors as those searching for directions (maps) have little interest in Gmail (mail).
Conversely, often, an ecommerce site may wish to distinguish their “store” from their “blog”. A subdirectory site may be the best structure here.
Will you derive any benefits using subdomains vs subdirectories. In terms of SEO, not likely, as Matt Cutts with Google explains in the following video:
But, take note, improving your user’s experience in finding, navigating, and managing your web content is what it’s really all about.