There is a plugin available for QGIS 1.6 Trunk that provides a very robust way to easily georeference images using GDAL.
You simply load the raster, plot points at your control points on the map (such as graticule crossings), choose a transformation (helmert, linear, polynomial 1-3, thin plate spline), an output raster name, and your target projection. Then tell it to have at it.
If you've georeferenced using ArcMap 9.3, you'll find the interface in this QGIS plugin to be a bit different. Instead of having to pan back and forth, zoom in and out, as in ArcMap, you have two views to work with in QGIS. The plugin view provides only the image you are georeferencing and then there's the map view in the main QGIS window. As you georeference your point by some coordinate (e.g., decimal degrees or UTM), those points show up in red within the main QGIS window (providing you're in the area you are trying to georeference the raster to). Thus you can verify your georeferencing as you plot without having to pan and zoom! I hope I'm being clear on this, because it is a fantastic way to georeference.
Also, as you generate points, they show up in a table below the raster. You can modify the x and y coordinate for each of those points as necessary. That is a true time saver. Finally, you can save your points to a file for future use.
Another great feature with the GDAL georeference plugin is that it can generate a script for you. I can see this being incredibly useful if you need to batch georeference maps from a class. Of course, the problem of reliable scans with minimal pixel deviations may ruin such plans.