Storing data

In Flash ActionScript 3. It appears they are two methods to store and
change data. so.setProperty method() and so.data property. Can someone
please tell me what the difference is? And, why would you use one over
the other?
Thank You