After Andres Torres singled and Pablo Sandoval doubled with one out in the top of the 12th, Burke Badenhop (0-3) intentionally walked Bengie Molina to load the bases. Huff then followed with his big hit to make it 8-6 Giants.
Tim Lincecum fanned 13 batters in his seven-inning no-decision. The win went to Dan Runzler (1-0), who struck out the side in the 11th to nail down the Giants' triumph.
The Marlins were led by Hanley Ramirez and Dan Uggla, who each hit three-run homers in the losing effort.
Senate Democrats to pull all-nighter on climate change
Interpol investigating stolen passports on missing flight