Say you are given two multivariate data sets, say an old one and a new one, and that they are supposed to have been generated by the same process(that you have no model for) but perhaps, somewhere along the line of collecting/creating the data, something went awry. You wouldn't want to use the new data as, say, a validation set for the old data or to add to the old data.
You can do a bunch of 1-d stats (per variable), e.g Wilcoxon rank sum, and try some multiple test correction but I'm not sure that's optimal (to capture the intricacies of multivariate data let alone multi-test issues). One way is to use a classifier and see if you can discriminate between the two datasets (given an optimal classifier that's optimal). That does seem to work but still a) perhpas there's a better way b) It's not really designed to tell you why it's different (if nothing else it will use the best predictors and possibly miss other good predictors that were subsumbed by the better ones)