I can't speak for the other programs, but Fritz 13 has some cool features that I enjoy for game analysis (which I do a lot of).
I posted an example of the "Let's Check" distributed analysis feature on my chess blog at http://tacticstime.com/?p=1430
Basically what this does is take a game, break it into individual positions, then distributes those positions to those users who are volunteering their engines for use.
Each engine does an analysis of each position, then returns the result back to the "cloud". Then you can pull the analysis for each position back down from the cloud (My example on my blog hopefully shows what I am talking about if this is unclear).
The rest of the analysis features haven't really changed much in the past couple of years (full analysis, which has the text that you are describing, blunder check, explain all moves, etc), so if you don't care about "Let's Check" you could probably get an older version of Fritz pretty cheap on eBay or somewhere.
The "Full Analysis" can be cool, but isn't really going to explain things as much as spit out some canned expressions. The evaluation graph is also really nice, but again this hasn't changed in years.
To me the most useful thing that the chess engines can do is point out missed tactics in games, which is what I use it for.
I really like the "Live Book" and "Let's Check" in Fritz 13, and to me this was worth the upgrade from Fritz 12.