Hill (3-3) pitched no-hit ball through five innings with two walks and five strikeouts. In relief, Saul Rivera gave up two hits in one inning, while Jesus Colome and Jon Rauch both gave up one hit in one inning.
Ryan Church and Austin Kearns both had two RBI, Brian Schneider had three hits and one RBI, Ryan Zimmerman drove in one run, and Cristian Guzman had three runs and three hits for the Nationals, who are last in the NL East.
Four players each had one hit for the Marlins, who have split their last four games.
Losing pitcher Scott Olsen (3-3) was charged with four runs -- three earned -- and 10 hits in 5 2/3 innings.