Cytoplasmic dynein, the 1.2 MDa motor driving minus-end-directed motility, has been reported to move processively along microtubules, but its mechanism of motility remains poorly understood. Here, using S. cerevisiae to produce recombinant dynein with a chemically controlled dimerization switch, we show by structural and single-molecule analysis that processivity requires two dynein motor domains but not dynein's tail domain or any associated subunits. Dynein advances most frequently in 8 nm steps, although longer as well as side and backward steps are observed. Individual motor domains show a different stepping pattern, which is best explained by the two motor domains shuffling in an alternating manner between rear and forward positions. Our results suggest that cytoplasmic dynein moves processively through the coordination of its two motor domains, but its variable step size and direction suggest a considerable diffusional component to its step, which differs from Kinesin-1 and is more akin to myosin VI.