Even with caching, a cache is only suitable until the file changes, at which point it would need to be re-cached. If a file is constantly changing then there is little benefit to caching.

Just as a badly designed multi-threaded program would run more efficiently than a badly designed single-threaded program, a well designed multi-threaded program would run more efficiently than a well designed single-threaded program (especially with dual, tri, quad, hexacore computers being the standard these days). It stands to reason that a bot that can perform two tasks at once will perform faster than a bot that can perform only one task at a time, no matter how well coded the single task one is.

Imagine a trivia bot running in a large channel that has !commands for top 10 leaderboards and whatnot. Now assume that the cache of this leaderboard is not up to date and the bot's stats file needs to be reprocessed. Let's assume it has stats for 10,000 players and takes a while to process. Whilst somebody is asking for the top 10, another player wants a hint for the current round. The player who wants the hint would have to wait until the bot has done processing the file before they get their hint, at which point the player might run out of time for that round. That's just one example.

As for your second and third paragraphs, I don't think they were meant for me as I never said mIRC was bad nor did I mention eggdrops :P