EDIT updated (improved) description of phase detection circuit
There are two principles used in these systems.
The first is the time-of-flight principle. As you noted, if you wanted to get down to 3 mm accuracy, you need timing resolution of 20 ps (20, not 10, because you would be timing the round trip of the light). That's challenging - certainly not the realm of cheap consumer electronics. The problem is not only the need to detect a fast edge - you have to detect the actual reflected pulse, and not every other bit of noise around. Signal averaging would be your friend: sending a train of pulses and timing their average round trip time helps. This immediately suggests that continuous modulation would probably work better - it has an inherent filtering characteristic.
That leads to the second way to get an accurate measurement: by comparing the phase of the emitted and returned signal. If you modulate your laser at a modest 300 MHz, the wave length of one complete "wave" is 1 m; to measure a change in distance of 3 mm (6 mm round trip), it is sufficient to detect a phase shift of $\frac{6}{1000}\times 2\pi$. This is quite trivial with a circuit that squares the transmitted and reflected wave, then takes the XOR of the two signals and averages the result. Such a circuit will give minimum voltage when the two signals are exactly in phase, and maximum voltage when they are exactly out of phase; and the voltage will be very linear with phase shift. You then add a second circuit that detects whether signal 2 is high when signal 1 has a rising edge: that will distinguish whether signal 1 or signal 2 is leading.
Putting the output of the logic gates into a low pass filter (resistor and capacitor) and feeding it into a low speed 12 bit ADC is sufficient to determine the phase with high accuracy. There are ready made circuits that can do this for you - for example, the AD8302
The only problem with the phase method is that you will find the distance modulo half the wavelength; to resolve this, you use multiple frequencies. There is only a single distance that has the right wavelength for all frequencies.
A possible variation of this uses a sweeping frequency source, and detects the zero crossings of the phase - that is, every time the phase detector output is zero (perfectly in phase) you record the modulation frequency at which this occurred. This can easily be done very accurately - and has the advantage that "detecting zero phase" doesn't even require an accurate ADC. A wise man taught me many years ago that "the only thing you can measure accurately is zero". The distance would correspond to the round trip time of the lowest frequency which has a zero crossing - but you don't necessarily know what that frequency is (you may not be able to go that low). However, each subsequent zero crossing will correspond to the same increase in frequency - so if you measure the $\Delta f$ between zero crossings for a number of crossings, you get an accurate measure of the distance.
Note that a technique like that requires very little compute power, and most of the processing is the result of very simple signal averaging in analog electronics.
You can read for example US patent application US20070127009 for some details on how these things are implemented.
A variation of the above is actually the basis of an incredibly sensitive instrument called the lock-in amplifier. The principle of a lock-in amplifier is that you know there is a weak signal at a known frequency, but with unknown phase (which is the case for us when we look at the reflected signal of a modulated laser). Now you take the input signal, and put it through an IQ detector: that is, you multiply it by two signals of the same frequency, but in quadrature (90° phase shift). And then you average the output over many cycles. Something interesting happens when you do that: the circuit acts, in effect, as a phase sensitive bandpass filter, and the longer you wait (the more cycles' output you average over), the narrower the filter becomes. Because you have both the I and the Q signals (with their phase shift), you get both amplitude and phase information - with the ability to recover a tiny signal on top of a hug amount of noise, which is exactly the scenario you will often have with a laser range finder. See for example the wiki article.
The quadrature detection becomes quite trivial when you use a clock at twice the modulation frequency, and put two dividers on it: one that triggers on the positive edge, and one that triggers on the negative edge. A couple of (fast, electronic) analog switches and a simple RC circuit complete the project. You can now sweep the driving frequency and watch the phase on the two outputs "wrap" - and every time it makes a full circle, you have increased the frequency by an amount $\Delta f = \frac{c}{2d}$ where $c$ is the speed of light, and $d$ is the distance to the target. Which has turned a very hard measurement into a really easy one.