well the ac unit in BMW's arent great. dont forget that the Germans were very adiment to preach that there is no use for such luxuries such as A/C and cup holders etc etc etc. anyways they werent the best made and most reliable (up till aobut 5 years Ago) usually the problems that cause A/C failure are the auxilery fan seizing , you can check it by trying to spin it using a long screwdriver throught the kiddney grills. if it does spin you have a seized auxilery fan. You could simply be out of freeon. And finnally you could have a defective A/C compressor, this is the most expensive of all the above mention fixes.