Did you try cleaning the Idle Control Valve ? MAF cleaner works well for that. If they`ve never been changed, there`s about a 100% chance that your VANOS seals are toast. Stop by the E46 Forum and start a thread for yourself. Good luck !
The road goes ever onward....
*Please support the Wounded Warrior Project*