I just stumbled on this website today and was amazed to find they offer free, full-sized USGS topo maps. Other services online often let you navigate small sections and then you have to buy the bigger maps. I've already downloaded a few and printed one. Great resolution too.
The interface is a bit clunky, but it works.
1. Search for a location (zip code, address, topo name)
2. Click on the Google map to add a marker
3. Click on the marker to see maps available to download