When mutt opens some folder, it downloads (or partially gets from the cache) headers of all messages from that folder. I find it very suboptimal.
It doesn't hurt too much when the folder contains just a few messages, but when I open some really large folder in mutt (for example, the folder containing messages from Linux Kernel Mailing List: I currently have almost 300 000 messages there), it takes forever to download. Even with the whole list totally cached, it seems it still refreshes some data, and it takes about 2 minutes to open that folder even when it's cached! This is just ridiculous. It's a waste of space and time.
Even more, 300 000 messages is probably too much for mutt, and when I hit q, it just hangs (I was patient enough to wait more than 5 mins).
I don't see any good reason to download all message headers. I want message headers to be loaded lazily, i.e. on demand: we just need to load a page to display, plus probably a few pages ahead, but the rest should be loaded only when the user scrolls there. Surprizingly enough, I can't find an option for that. Do I miss something, or is it impossible to setup lazy loading in mutt? (from what I've read, mutt is highly customizable and efficient, so it's hard to believe that kind of functionality is not implemented)