The <if> tags work in the same way as an if PHP tag (because thats what it really is

) however you are limited to what you can do with them, for example the following wouldn't work:
PHP Code:
<if condition="construct_forum_jump()">$forumjump</if>
This is due to the fact you are limited to the functions that are called via the <if> tag, vB does however warn you of this and make you change it.
Why use them? They significantly reduce the number of templates needed for starters. For example with vB2, if you wanted a certain message to appear to guests then you would need a seperate template for it and code in the file to eval it, with vB3 this requires one simple conditional.