What is the difference between dateModified, dateCreated and dateUpdated? Can someone explain exactly what each of the above refers to when talking about assets? In particular, the difference between dateModified and dateUpdated.
dateCreated and dateUpdated are pretty standard columns that you can find in pretty much every Craft database table. They store the date in which the row was created and last updated, respectively.

dateModified is an assets-specific thing, and that stores the time that the file was last modified, according to the file system.