Drupal has a lot of modules aimed at helping site builders and users add forms to their sites. What follows is a rough comparison of 4 of them. If there are any I've missed, please add them.
Webform is a module designed to allow you to add custom forms to the front-end of your site. Each form is stored against a node, so you add new forms to your site as if you were adding content. It's useful for things like Survey websites or just where you want a couple of forms that differ from the standard contact form.
- Webform has been around for a long time, its very well established and has a big following.
- Webform can make a wide variety of forms with lots of different elements available.
- Webforms inherit all the cool access stuff that nodes have.
- Webform submissions are stored in their own custom way - not using any of the standard drupal API's.
- Drupal 7 has lots of cool Field Types available in contrib that webform cannot utilise.
- There is little or no integration with alot of modules because the submissions do not use entities.
- Webform cannot (without some magic) be used to edit nodes or comments.