Hello,
I believe that setting a guest to Provisioned gracefully shuts down the guest (which is why it's necessary), but that also setting it to Configured de-allocates system resources from the guest (such as CPUs and mounted disk images). When I upgrade our hosts, I first set the guests to Provisioned (one at a time as we have 2100 model blades), then set them to Configured.
An added bonus of setting the guest to Configured, is that you can change the guest's base image at that time. This is useful for major code upgrades so the guest doesn't revert to an older version (I have had this happen to me).
Hope this helps!