2
Possibly because the XoopsForm classes were created prior to the adoption of Smarty, but I personally use XoopsForm because it is easier - three lines of PHP code instead of 4-6 lines of HTML/Smarty code coupled with 3-4 lines of PHP code to build the arrays to go in html_options etc.
For me it is easier to go XoopsForm all the way - and use $form->assign($xoopsTpl); if I want to create a template to show the form in.