They have their areas of use. They're great for spotting your tactical mistakes in your games. Combined with a chess GUI (graphical user interface), you can build a database of your games that you've played.
Engines suck at teaching you anything about strategy or positional topics.
The "best free engine" is in the eye of the beholder. Almost any of them will do a good job of spotting tactics.
The problem with engines is that it's easy to overuse them, and then they turn into a crutch. They're no substitute for learning chess the old-fashioned way.
Are chess engines of much help to a beginner? And what is the best free engine to try?