Relating to the storyTELLING i prefer Reach. First playthrough of the halo3 campaign was awesome, but i didn't got much of the story. And evene after the 4th or 5th playthrough i get to now new things of the story i did not recognize before.
Relating to the story itself, i prefer 3, because youre this damn mother-blam!-aasskickingsuperspartansoldier who is the only spartan left and saving the humanity is in your hands. And this this is awesome.
Relating to epicness and "YES!OWNED!"-Moments both are perfect. Moments in 3 like killing the first scarab or when the flood infected ship is crashing on earth and alle marines get nailed by the flood is pure epic.
In Reach some of those moments are when the corvette over the swordbase gets nailed by the orbital station or the explosion of the covenant supercruiser and it crashing down on reach.
I think both are equal, but after playing reach campaign 5times it is 100times better playing then halo3.