1. The SD card allows you to save the program and all documentation and comments.
2. If you use automatic device configuration (I do not) then you can also store the firmware on the SD card and the processor will automatically flash the drive or whatever device you are using. This will only work with minor rev changes though so it is mainly just a compatibility feature.
3. You also can use the card for storage and retrieval of recipe data.
To store your program you must be online with the processor in program mode. You may then save to non volatile memory.
All in all #1 is extremely useful. #2 and #3 are useful but the implementation AB chose for those features is a pain and there are other methods I choose to use to suit myself and lower development time.