I've done both. A lot depends on the magnitude and degree of customization invested in installed programs. The last time I upgraded OS's, i.e., Vista to 7, I first did a clean install. After three days of screwing around trying to get everything working like it was, I tried a direct upgrade. Voila! Everything was perfect first time.
BTW - I always do this with a new HDD - and never change the old one until all is 100%.