Template Blocks are sections of code that work in templates that show a section depending on whether certain conditions are true. You can use them to show different sections to different people, ie "Only show this section if the user is logged in"
A template block is similar to template functions
in that they are both smarty code that goes into your template to achieve a purpose.
But while a template function is a single item, template blocks wrap a section. They have a starting point and an end point.