By what standard is McGrath much better, I actually find it hard to distinguish between them. I give him credit for playing well in a more batting-friendly era, but you would also have to give Hadlee credit for playing in a less-than-champion side. It's easier being a bowler if you are assisted by a great fielders and high batting totals, no doubt.
Well by "much" I mean "I'd take either in my team right now, but given a choice between the two I'd pick McGrath for his bowling any time".
McGrath was probably the most accurate bowler of all time. He excelled at taking top order wickets and often did not get a chance to clean up the tail to boost his average. He bowled in an era where there was a grand total of two other quick bowlers to average under 25 (Bond and Pollock) where pitches were flatter than at any time in living memory, in an era where there have been Yousef, Kallis, Sangakara, Tendulkar, Lara, Dravid, Flower, Sehwag, Smith and Pietersen with career averages over 50.
He was pivotal in Australia finally winning in India, and was the backbone of the Australian bowling attack in its era of domination. He also maintained an economy rate of under 2.5 in an era when batsmen have struck at around 60 instead of 40 as was previously the case.
McGrath took more wickets than any other fast bowler in history.
Hadlee on the other hand, while a class above his team mates was not clearly the best quick of his era (and given the debate over him and Lillee, it is unclear whether he was the second best quick of the era). I do agree that he was responsible for most of New Zealand's wins of the time, which counts for him. However he took a higher proportion of tail end wickets than McGrath did.
Hadlee was a brilliant bowler. McGrath was a genious bowler.