I had my newly purchased '97 328i's cooling system completely replaced because of overheating. My Independent BMW mechanic replaced the radiator, thermostat housing and thermostat, all new belts and hoses, flushed system and refilled with Genuine BMW 50% Antifreeze. On the way home from his shop my wife drove as I followed and we both got stuck in traffic with outside temps at around 90 degrees F. We were in constant contact on our cell phones and for a while her Bimmer temp gauge stayed in the middle but then after sitting in traffic it started to climb up toward the red so she pulled off the freeway and parked, with me right behind her. We were pretty disappointed after just spending $900 to fix overheating as you can can imagine.
I called our mechanic and he immediately jumped in his service truck and drove about 10 miles to our location. He determined that our fan clutch was not engaging (he was able to just stop the fan with his hand at idle) and so he replaced it with no charge for labor.
It has not overheated since with trips over the Sierras to Reno, NV and to Monterey over the coastal mountains at + 95 degrees F outside temps.
Our BMW mechanic did tip me off that if your Bimmer starts to get hot, turn on the A/C because that will automatically start the two electric fans in front of the radiator which will help cool down the temp.