You are mixing two separate, but unrelated issues here.
Issue one: Later IDE drives (such as ATA-100 / ATA-133) respond faster than old software expects them to, similar to many flash devices (CF cards). This causes issues with 286 / 386 systems. Using the XTIDE Universal BIOS (XUB) instead of the buggy BIOS drivers will fully cure this issue. Some operating systems suffer in the same way and patching/replacing their IDE drivers is necessary.
Issue two: MS-DOS on slow CPUs with large disks is slow calculating the free disk space (first time calling DIR). The obvious fix is to not use huge partitions on such systems. No application suitable for a low-end 386 needs a 40 GB partition.
Also, I'd like to add:
5.) Drives above 120 GB: Classic LBA uses 28-bit addressing and is limited to 2^28 sectors (128 GiB / 137 GB). Trying to access any disk area above that is likely to cause wraparound issues (and data loss) on any BIOS or operating system without the newer LBA-48 support. This includes Drive Overlay solution (Disk Manager, ezDrive, etc), but also modern solutions such as XUB. Treat such drives as 127 GB to be safe.
Many AWARD BIOS versions are known to crash when detecting drives above 32 GB, even when the drive is disabled in the BIOS setup. The only fix is to limit the drive capacity to 32 GB or less. Some drives have jumpers for this; such an artificially limited drive reports its true size in a different way. A Drive Overlay or sufficiently advanced operating system can use such drives at full capacity (after booting).
I have a Pentium system which does this (incidentally, also an AWARD BIOS). It supports both LBA and various CHS translations, so drives below 32 GB work fine. The reported size is completely wrong, though.
Ah yes...I wrote this in a bit of a quickie....so I might have missed it good catch.
Here's some of my experiences for some real life examples.....and maybe why I might have missed some things.
1.) The Drive speed makes sense, I think I forgot a recent experience I had with my Deskpro 386s/20 recently, using a ATA/100-133 drive on it (Western Digital WD800JB - but I was using the regular ATA-100/133 Jumper Settings I might add). That drive took FOREVER to process a DIR command in DOS because of the partition size (4 FAT-32 Partitions around 20GB Each). Part of my thoughts come from a guy on here who used an IBM 386 Portable (luggable, one of the PS/2 ones) with an 80GB and was happy with it. As with all these things, experimenting does not hurt, but YMMV.
2.) I don't think I've used a bigger partition than 32GB on any of these systems, and the one with 32GB partitions is really pushing it but that 486 is a REAL unicorn. The relevant drive info is that I have ONE drive per each channel (DVD-RW uses 2nd Channel as Master) on a PTI-255W Super I/O VESA Local Bus Card - and the drives are swapped in and out using a Lian-Li RH17/RH37 5.25" Mobile Rack. I have 5 drives for it, with the newest setup being a 128GB Intel SATA HDD over a KingWin ADP-06 SATA Adapter, using OnTrack 9 DDO, drive split into 4 32GB Partitions. This setup works amazingly for FreeDOS and is quite snappy, but I also put a lot of weight on it (IE, virtualized ISO files using OMI for a lot of bigger games like The 7th Guest, Under a Killing Moon (4x CD-ROMS), or AD Cop). The slowness on the 386 was a WDJB800 HDD split into 4 20GB Partitions. Honestly, I mostly use the big setups on 486 and later systems that have enough speed to be comfortable. 386s typically just run plain DOS. The 386 now has a 4.3GB Seagate Medalist with Maxblast on it (yes, I cross brand DDO, Maxblast seems to work with a lot of drives and is more friendly on older computers with older IDE setups).
I don't see myself using anything above 128GB - since that's really cheap, and plentiful. I tend to fit the size to the computer. Most of my machines are 486s (486 DX4-100 desktop, 2 NanTan 486s, 2 NEC Versas) and the majority run 2.5" or 3.5" ATA-100/133 drives without issue, split into 4 equal partitions. Most of the time, I stick between 8-80GB in size and use drive C for the O/S (obviously), D for Apps, E for Games, and F for the OS install media at ready, ISOs, Mp3s, whatever else I might want to experiment with, as well as a local driver store for reconfiguration on the fly.
Most of my drives get backed up onto my server at home and I can just drag-n-drop onto any replacement media as/is. Since most of what I'm doing is gaming, most of the BBSes I surf come and go, and the internet remaining accessible to vintage machinery is questionable at best, I don't really worry about loss of savegames/shortcuts/etc. 90% of the time, I open the drives off using a jmicro USB 2.0 to IDE converter on my main Linux boxes in a Win2K virtual machine, and then drag-n-drop the contents back on their partitions, and then use sys c: on the drive via bootdisk post DDO. It's a nice system I have going, almost no reliance on optical or magnetic media other than the drive itself, and reloading a vintage PC to it's default state takes at most about 30 minutes.