Form API

The Drupal Form API provides sophisticated form techniques and also allows for almost unlimited possibilities for custom theming, validation, and execution of forms. Even better, ANY form (even those in core) can be altered in almost any way imaginable - elements can be removed, added, and rearranged.
An example of a basic multistep Drupal 6 form with 3 steps, "Previous" and "Next" buttons on each step and possibility of moving both forwards and backwards in the flow with submitted data being passed on between all steps