Part of the issue is that the UI is not really great for thousands of files. If you need to review the changes Picard wants to make and for some difficult albums Picard scattered the tracks over multiple releases it really gets hard to spot and correct this if the list is too long. I personally do only 20-30 albums at once and for difficult compilations I often load only 2 or 3, but that's pretty personal figure. Some people might easily deal with a few hundred albums, but there is definitely an upper limit to what makes sense. Another point is the loading speed since Picard is limited by the web service request limit enforced by the MB server.
Regarding the memory usage: Yep, it is rather high. This is partially caused by the fact that Picard keeps the metadata for each file and each loaded track in memory, and usually has multiple copies so it can show you the changes and revert changes made. Also cover art from files and the web is kept in memory. Together with all the structure the UI needs this sums up pretty quickly. There are for sure strategies that could be applied to lower this, but since this wouldn't fix the fact that Picard is not really meant to be used this way nobody has put effort into this.
Unfortunately there are frequently users who try to load huge collections at once and get frustrated. Not sure how to best deal with this, maybe Picard should display a warning