Like always, it depends on what size space you're working within, as well as how large a collection needs to be stored. With many of these ideas, also pay attention to shoe size. Some solutions won't hold many large sized shoes, while others will. Also, keep in mind how many differently shaped shoes, like tall boots, might need a place to live.
On the floor: The most popular shoe solution is to keep them on the floor, sometimes just on the floor in a row. The next step is to add another layer, like with shoe shelves from Target:
The Container Store, also work:
Storing shoes that aren't often worn under the bed or another piece of furniture can work in bins or protective bags.
And, if you've got small floor space, but room to move vertically, think about a shoe wheel, shoe tree or shoe cabinet. These are some of the neatest products out there, but require a specific amount of space. (I'd like to add that the Rakku products, like the shoe wheel, seem amazing, though I've not met one in person).
On the door: There are a variety of on-the-door shoe storage items. All of these are available at The Container Store:
Hanging: Last, but not least, you can explore hanging options, assuming floor and door space are less-than-ideal options. There's the canvas bag to hang in the closet, like this one from Target:
And, lastly one, specifically for flip-flops! From Organize-It: