If fan isn't working that could be the cause. Have you checked the fuse? I think it is Fuse 37.
Any water around ... split expansion tank? Yellow Low Water light?
If all is OK, I would wait until the temp got down to normal and drive easy making sure you still have air passing over the radiator. Turn the engine off while stationary in traffic.
2001 E46 325i - Australian RHD
2001 E46 318i - Australian RHD