I've always communicated required form fields on web applications to users by hanging an asterisk off the end of the control or the label and having a little sentence along the lines of "required fields are flagged with an asterisk(*)" or similar message at the head of the form so that they know what's what before they start filling it in.
Totally uninspiring.
After far too many years of that I'm sick of it, and am looking for something different that's intuitive, and definitely more interesting.
Has anyone come across a method for this which is a bit different, and equally importantly, gets the message across before the user starts to use the form?
EDIT: I'm staying with the asterisks...I tried some of the ideas presented and some looked great, but there is no getting away from the point Michael makes that the asterisk is expected and moreover is universally understood. Further, when you consider accessibility it becomes more of an issue to use CSS etc to deliver the message.
I found this to be a good article which also have some useful instruction on how to ensure that sighted users and those using screen readers get the message correctly when iterating through the fields.