Let me take a shot here too:
Chunks can’t contain any PHP code.
Snippets (and plugins) most often contain nothing but PHP code.
When you edit a document, there are predefined fields for the Title, Long Title, alias, description, etc., and the main one: Content. Template variables just give you extra, custom-designed fields (optionally with widgets to display the TV contents).
The fields of a document, and the output of chunks and snippets are displayed with tags. The tags are replaced by the thing they refer to (e.g. a chunk tag will be replaced by the contents of the chunk, a snippet tag will be replaced with the return value of the snippet).
The tags can be nested within other element or within other tags, so a chunk can contain a snippet tag and a snippet tag can contain a chunk tag.
It all makes sense once it makes sense.
Hope this helps.
See also:
http://bobsguides.com/MODx.html