Key Differences
Not sure how far you've come in your reading. But to communicate differences, I've had to do initial "sell" to help folks understand why they should be doing CM and what it gains them. Many better explanations of "why" then I could pen (nor care to waste time penning). Here is what I leveraged and I'm including just a small portion, but you get the drift:
http://serverfault.com/questions/504070/why-use-chef-puppet-over-shell-scripts
Key pieces:
• Idempotence
• Ease of Dependency Management (versioning)
• Standardized Organization (accepted at an industry level)
• Abstraction to separate server configuration tasks from system level details
• Ability to leverage community knowledge (that is guaranteed to embrace all the above principles)
More on Convergence and Idempotence:
http://stackoverflow.com/questions/30615588/difference-between-convergence-and-idempotency-in-chef
Convergence and idempotence are not Chef-specific. They're generally attributed to configuration management theory, though have use in other fields, notably mathematics.
etc.
But tools like this have to exist if you are managing hundreds or thousands of machines/instances.
Scripts don't cut it (beyond a certain point of course) and we see folks that are tipping. Scripts that are no longer sustainable , the scaling fell down.