The HostStorageSystem APIs are low-level enough for performing VMFS provisioning operations. They require a knowledge of partitioning details and VMFS extent composition. They do not enforce VMFS best practices like partition alignment and optimum VMFS block sizes, and they allow you to mix extents from different datastores on the same LUN and to add extents even though expansion is preferable in most cases.
The HostDatastoreSystem APIs are primarily used for managing VMFS volumes. They don’t require an in-depth knowledge of storage systems, and do enforce best practices.
Storage APIs gives an overview of the different APIs;
Storage API Overview shows which tasks are commonly performed with which API.