I don't claim to be an expert mechanic, but once i helped a friend with similar problem- Overheating on 1996 5 series. The dealer decided on the thermostat, other mechanics said clutch for the fan, then auxeliary fan $300 plus, water pump. To make it short local BMW mechanic (not the dealer) claimed the green antifreez builds up residues in the system and clogs the engine lines (beats me) compared with the orange/redish BMW antifreeze. For final solution? All of the above turned out to be FALSE claims when one smart mechanic did a compression test on the ENGINE ITSELF and found a small crack in the head, so it was replaced for about $1800 solved the overheating problems. Unfortunately a month later the car overheated again. Took it back to the same smart mechanic but this time it was the little black hose tucked-in behind the engine and the firewall ( part of the heating system and the best sign for its failure was A FOGGY but OILY windshield very similar to failing heating core when antifreeze hits the winshield and carpet ) anyway they did not tighten the clams on the hose when they replaced the head.
Let us know how u make out, the best of lucks