1. Archival. If I like something and will need to refer to it/revisit it later (more than a month, say) I will bookmark it.
2. Frequently used pages sit neatly on my bookmarks bar so that I can get to the websites I want quickly just by glancing at their favicons.
Organisation:
I primarily organize in 3 levels.
Top level: This is where frequently used stuff goes. I have configured FF to only show favicons for these so they take little space. eg. HN, GitHub, Outlook, Reddit and Bugzilla.
Second level: This is where things go for archival. I have bookmark folders at the top level that represent a category. eg. Books, Movies, Tech, Coding. Each of those can be further categorised. An example is my Tech folder is broken up into Articles, Blogs, Podcasts, Material (projects, GH repos etc.).
The void: This is the final level or organisation and is just a catch-all folder called Sort-These-Out where all stuff I'm too lazy to organise (or which isn't well defined right now, or things I'll get back on another machine maybe (Linux vs Windows)) goes. It currently has 13 bookmarks. Not bad.
PS: Did you know you can send tabs across Firefox instances on different machines by right clicking and hitting "Send Tab to Device"? The best thing ever.
EDIT: Forgot these two features.
1. Keyword search. Kind of like the bang query syntax from DuckDuckGo you can set up a keyword to search a single website by creating a bookmark. So I can go 'gh mycoolrepo' for searching on GitHub.
2. Tags. Firefox allows you to tag bookmarks. It helps me a lot when, for example, I want to find all bookmarks related to vim (but don't necessarily have vim in the page title). I'm working on an autotagger that integrates into Firefox to save me from having to tag them myself.
[1]: http://www.wikihow.com/Use-Firefox-Keywords (See method 2 for easier variant.