I do quite a lot of recording of bats, so there are three main programs that I use. My preferred technique is to record continuously into 4 or 5 minute long files and I analyse these with Audacity, which is free, very versatile and reasonably intuitive in its controls. I add a label track and add my identifications of each pass in the label track which can be exported as a text file alongside the original .wav file.
I know that a lot of people don't like the workload of continuous recording and prefer to use triggered recordings of 5-10s when a bat is detected, even though quiet calls may be missed (and this is obviously preferable for long static deployments). In this case I use Kaleidoscope. I just use the free version since I can't afford the pro version. Properly set up this allows rapid classification of large numbers of short files that can be viewed in a single screen without having to pan the spectrogram.
Finally, since I end up with large numbers of recordings, I use my own Bat Recording Manager program (freely downloadable through www.echolocation.org.uk), which can not only streamline the analysis process (especially with Audacity, but also with Kaleidoscope or AnalookW) but stores all the metadata so that particular information can be easily retrieved and examined.
I have tried most of the other software (at least those programs that I don't have to pay for) but find most tricky or non-intuitive to use. Sonobat does good pulse analysis and bat ID but the interface is very poor (small dark text on a dark background and non-intuitive controls) but is highly recommended in some quarters. BatClassify is no longer supported and is a little limited but can be useful if you can find a copy. Avisoft SASLabLite is extremely powerful and can do some very sophisticated manipulations but is to cumbersome for everyday use.