Although the Helix documentation does cover this, I guess it's a big pill to swallow all at once so here are a few simple guidelines to help you on the Helix path:
Foundation module
This acts as an API to Feature modules.
The Foundation does not contain any form of presentation!
Feature module
This contains logic and presentation, but never styling.
So presentation is usually in the form of semantic HTML so it can be styled per Project module.
Feature modules may reference Foundation modules.
Project module
I guess you would typically not include this in a Marketplace package as this is the site-specific stuff, but you could add a demonstration project, for example to explain how the module could be styled.
In reference to Richard's answer:
Foundation
Modules that are really CMS based. So a control panel, some admin
interface etc..
Feature
Modules that obey the Common Closure Principle
I do not agree with this; The fact that it's a control panel or admin tool does not indicate whether or not the module contains presentation.
Features do not have to be client (front-end) features!
You could say that if the module is exposed to a user (whether that is a content editor or a site visitor, doesn't make a difference) it's a Feature module.
Also, the Common Closure Principle applies to all the modules in the Helix architecture, not just the Feature modules!
For example: Take a look at the MultiSite module in the Habitat example.
This module is contains both Feature and Foundation projects.
The Feature project contains the stuff that is exposed to the user.
The Foundation project contains the stuff that is used by the Feature project and may be used by other Feature projects as well.
TLDR; Your Marketplace module can contain both Feature and Foundation projects. It does not necessarily have to either a Feature or a Foundation project.