Having more than 3 GB of RAM is not entirely uncommon these days, especially not on high-end gaming systems. Regrettably, 32-bit Operating Systems are still as common as ever, and the aging core architecture of the x32 is finally catching up with the evolution of hardware - at this point only virtually bottlenecking performance by artificially limiting your options - but sooner or later they'll be a physical bottleneck. Age of Conan runs much better on a 64-bit system than a 32-bit one, and indeed if you have a 64-bit version of either Vista or XP it's unlikely that you'll ever face any out of memory errors or memory-related crashes at all while playing.
First to clear up some myths: The 32-bit versions of Windows XP and Vista supports 4GB of RAM. However, the OS can't allocate more total memory than 4GB, which means that including your system BIOS, a gaming-grade GPU, and various other pieces of hardware, there's only around 3,5-3,7GB available to be effectively used by your 4GB of RAM.
Out of those 3,x gigabytes, the operating system won't allow you to assign more than 2GB to a single application. With the AoC engine being in the state it is (absolutely fucking dire), 2GB on a 32-bit OS is more often than not too little for AoC to run well over the course of 3-4 hours. Giving the AoC process access to an extra gigabyte of RAM, however, makes a huge difference. You should be able to play for much longer without getting to the point where the client requires to be restarted (or your computer requires to be rebooted). To do this, you need to do one out of two things. For Vista - input a simple command. For XP - add a parameter to your boot.ini file. Read on for the instructions.
I'm obviously aware that this is nothing more than a workaround, and nowhere near a fix. A proper fix needs to be in the form a game engine overhaul. One can only dream.
For Vista, open a command prompt (cmd) as an administrator (this is required) and type the following:
BCDEDIT /Set IncreaseUserVa 3072
Then reboot. And voila.
For XP (not sure if it's doable with XP home), open the boot.ini file - after you make a backup of it just in case.
Find the line that looks something like this (might vary slightly depending on your system):
[boot loader] timeout=30 default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS [operating systems] multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Pro"
Change it so that it looks like this:
[boot loader] timeout=30 default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS [operating systems] multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Pro" multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Pro with /3GB" /3GB
Save changes and reboot.
The chances of something going wrong should be very slim here. As long as you don't fiddle with anything other than the above, there's no reason at all why anything should go wrong. If anything still goes wrong, though, don't blame me.
This switch is documented and supported by Microsoft, for the record, but is - as most useful functions are - "recommended for advanced users only".