Other than choosing the actual containers, storage location is the most important decision and the one for which you will likely have the least amount of options. The choices you make can affect your build spontaneity so take that into consideration.
The most common options
Closet – free standing racks/bookshelf, wall mounted wire rack/shelf, or stacked containers.
Cupboards – Free standing wire racks from the kitchen or bathroom section of Target or Walmart can provide stable vertical storage in a cupboard. Depending on the space available you may be able to use baskets.
Under/behind bed – I try to confine this area to MOC storage. Putting parts or sets here tends to produce an “out of sight, out of mind” situation.
Out in open – If you have a dedicated room or don’t mind your storage visible this is definitely an option.
Offsite – For large collections this is certainly an option. Renting a storage container for brick storage, absent a business such as a BrickLink store, is not something I can imagine ever doing. In addition to the monthly cost, keeping track of exactly what is in the remote location is potentially problematic.
Optimize where possible
Unbuilt sets in original boxes have a lot of wasted space. Pulling out the polybags, placing them in bulk storage and breaking down the boxes can free up a lot of room.
There’s also consideration to be made for sub-storage of parts for active builds and projects. The location of your storage can influence your creativity and flow if you have to dig for bricks. I tend to use shallow trays to hold them.
If you stack containers in your closet be sure to leave room around any sprinkler heads. Blocking them is bad news and if you stack too close the heads can potentially be damaged when you move containers around.