Do you absolutely need to do something Asynchronous?
If so, indeed the best way to do it is to add a hidden bit column, or an int column if you want to cheaply store changed flags for several columns.
I use these rules of thumb not to have to look at that post all the time: So if you want to test if a specific column was changed you have to use the Item Updating instead of the Item Updated eventreceiver.
Is there a reason why do you want to use the Item Updated receiver specifically?
There is a difference between the behaviour of Before and After properties when dealing with document libraries versus when dealing with lists.
If you follow the link he uses you'll see the table for lists he uses is different from the one he references. As many of you know, event receivers are a great way to hook into various Share Point events.These can apply to Feature events such as Feature Activated, List events such as Field Added, and many others.These events could be web events (Web Adding, Web Provisioned, Web Deleting etc), feature events (Feature Activated, Feature Deactivated etc) or most popularly, list item events (Item Updated, Item Updating, Item Added etc).Before Properties and After Properties are available for the different event receiver classes.