I’ve discussed vacuuming Firefox before to make it run like new, but it’s not something everyone is exactly comfortable doing. I found an extension called Vacuum Places Improved that automates the process.
Most importantly, in the options for the add-on, you can make it run, say, every 50th time Firefox starts. That way, the vacuum process happens transparently–at the expense of every 50th load being slower, the database gains automatic maintenance. I’ll gladly trade occasional slower load times for improved performance.
Just vacuuming the places database isn’t always enough, but it makes a big difference in performance. It’s also something you might not necessarily remember to do as often as you really need, and it’s not exactly easy to remember how to do it. As such, it’s a good candidate for automation.