Yes -- completely complementary (VMware thin provisioning and dedup).
Both thin provisioning and dedup can help with the "empty space" inside most VMDK's (as empty space dedups quite well after all) but only dedup will handle the duplicate files across multiple vmdk's (OS data, etc.).
And....if possible I do strongly recommend looking at NFS for VMware environments. For dedup in particular, it makes using the freed up space trivial.
http://communities.netapp.com/message/8822