I use 'em all over the place. There are big chunks of template code in my blog which is
almost (but not quite) the same in different places in my blog.
I abstract that code into a Template module, use MTSetVar before including the module and then use the Compare plugin and MTGetVar to do whatever conditional execution needs to be done in that location.
As one (simple) example, I have two different RSS 2.0 Feeds, one with the full post contents in a <content:encoded> field, and one with descriptions only.
The template for my RSS 2.0 Full Content feed is:
CODE
<MTSetVar name="content-field" value="true"><MTInclude module="RSS2feed">
For the other feed, replace "true" with "false".