Hi guys, the above steps worked for me. I am going to outline some caveats to what I found worked for me. I had a spare key that only worked by key in door method (manual). After reprogramming (total time less than 2 minutes) I am now a happy owner of 2 sets of working X5 car keys.
*Caveat 1: Make sure all doors are unlocked (not just driver door)-use central locking button if unsure.
*Caveat 2: All windows must be up. (dont know why but they must be up)
thats it.........
----------------------------------
Steps:
1. Unlock all doors (ensure windows are up and sunroof is closed)
2. get in car
3. close door
4. put 1st key in ignition and turn to #2 igintion position 5 times.(All lights on dash will come on and go off 5 times)
5. take key out of ignition.
6. hold down "UNLOCK DOOR" button.
7. Press the round BMW "LOCK DOOR" button 3 times (counting like this helps.....1 elephant, 2 elephant, 3 elephant)
8. release all buttons.
9. you will then hear the doors lock then unlock.
10. grab your 2nd key that needs reprogramming and do the following steps).
11. hold down "UNLOCK DOOR" button (top button).
12. Press the round BMW "LOCK DOOR" button 3 times (counting like this helps.....1 elephant, 2 elephant, 3 elephant)<---counting like this helps.

13. you will then hear the doors lock then unlock again.
14. thats it.... All keys are programmed and you are set.
get out of car and test both sets of keys.
-----------
Handy Tip: if you are locking your X5 and press the round BMW lock button and the windows are down - after you have pressed the round BMW lock button,
keep holding down the round BMW lock button after the car doors have locked and you will see that the windows will automatically go up as well (first the front , then the backs and then the SUNROOF!!). MAGIC!! amazing too!!! im wrapped....