How long does a transit of Venus last?

Between 3 to 7 hours depending on which 'chord' the transit takes across the Sun's disk. The figure below shows the two possibilities for the 2004 and 2012 transits: