Ubuntu replaced traditional System V init daemon with a new thingie called upstart. It's asynchronous, meaning it can run start-up tasks in parallel, whereas traditional systems such as init or rc have a strict, blocking sequence of running (with some exceptions, like running DHCP client on network interface in background, non-blocking).
So there's your fast boot. However, I don't like that stuff. It's to similar to way Windows handles it. Meaning that some task can still be hooked and still wait for some "event", while the user is presented with his desktop. You know the usual Windows stuff, you get your desktop but the HDD is still chugging like an old truck while tray icons are appearing one by one.
I don't frankly care about the boot time. 20 seconds or 2 minutes is same to me. What I expect is complete idleness once the system presents me with login.
Not saying that Ubuntu will slow down like Windows does over time, just pulling out pros and cons of the subject.