I haven't really used Windows for anything serious in more than 20 years (and I recently had to mess with Windows 11 and it was terrible), but I'm not sure you'd be very happy going back to Windows 3.1.
It was a 16 bit system (it could run in "Enhanced Mode" which involves 32 bit protected mode, but in reality Windows itself, and the applications, were still 16 bit).
That means the resource constraints were very real. Even if you had a lot of actual memory in your machine, the memory that was actually available for "general purpose" was effectively a few hundred kilobytes. There was also the notion of finite (and very generically-named) "system resources", and you could see in the "About" box how many percent of those you had free. Once they were gone, you were in trouble:
USER.EXE and GDI.EXE each have a data segment (that is, heap) limited to 64K. The 8086/80286 platform architecture imposes this 64K limit. Program Manager checks the percentage of free heap space for both USER.EXE and GDI.EXE. It then reports the smaller of the two percentages.[1]
All applications ran in the same address space. A broken application meant a total crash at best, subtle data corruption at worst. Multitasking was also cooperative, so apps could hold up other apps indefinitely, or just hang the entire system.
Since it was not based on paging, to accommodate the very limited memory, entire segments could be swapped out, or even relocated, within the address space. As a programmer, that meant dealing with stuff like "locking pointers" so Windows wouldn't move your data segment under you. As a user, that could mean general slowness.
It was firmly based on DOS. So many problems that you had in DOS, drivers or whatnot, would exist in Windows as well.
There were better systems at the time that you could wish yourself back to, some number of them based on UNIX in some way or other.
But Windows 3.11 had really pretty icons. The prettiest, in my mind.
[1] https://ftp.zx.net.nz/pub/Patches/ftp.microsoft.com/MISC/KB/...