McGinn's short-side wrist shot at 15:35 gave the Hurricanes a 5-0 lead.
The Hurricanes outshot the Capitals 18-1 in the second period and 30-8 over the final two periods.
"Obviously it means we played well," Staal said. "We wanted to give them nothing. That was the first key. We'll take it."
Alex Ovechkin, who led the Capitals with five shots, said the effort was not good enough.
"We knew they weren't going to sit back and wait for something to happen," Ovechkin said. "We knew they were going to push. We knew they were going to play hard and they did. Tonight all four lines didn't play the right way. We didn't play our game at all."
The win was Carolina's first against the Capitals this season; they lost all four games during the regular season.
"The guys did a great job," Hamilton said. "I think we were relentless. We just kept going at them. The crowd was unbelievable. It was one of the loudest buildings I've ever played in and just so fun, so we've got to take advantage of that."