Well..a list of software I commonly use would be...
winkfp - flash stuff
ncsexpert - read/write parameters to stuff
ncsdummy - changing parameters and nettodat coding
bmw coding database - for switching different chassis in winkfp
inpa - factory level diagnostic tool
ista-d - dealer level diagnostic tool
ista-p - dealer level programming tool (to flash and code stuff)
radar32 - icom specific
He basically gave the rundown of what each one is used for.With this being said we should ask the question, What all are you wanting to do with the software? Personally, I have only found use of the winKFP and NCSExpert applications even though, just like your toolbox you can never have too many tools for unexpected jobs!