When your designing your form think of it as how am I going to get the user from A to B in the easiest and most pleasant way possible.
Try and keep them focused on the fields by moving any labels inline and the descriptions to the right hand side of the form and to the side of the forms elements and only show when the user focuses on a paricular form element or even consider using a pop over on an info icon.
Try and fill out the form for them on things you can gather like their location eg. Suburb, postcode and or suggest with 'Autofill with somesuburb' link.
Use auto suggest to help them type less.
try and keep it compact so the user does not have to scroll up and down the page.
Be direct and keep your words minimal in any error messages without sounding harsh or rude and without sounding like a robot on repeat. eg. Required...Required...Required...
Avoid using the word required on the label, rather use (optional) on any fields that are not required.
Use labels rather than placeholder text only if your considering this method. It always annoys to have to focus out to see what you need to type in an input field.
Try and keep checkboxes and radios on one line.
Hope that gets you started!