Essentially They use one of these: http://www.routerboard.com/comparison.html
And their own flavor of Linux o/s to deliver a scalable, small, network appliance. Their OS is fairly flexible and you could use either standard x86 architecture or offerings from Routerboard.
At my previous job we were implementing MikroTiks as all-in-one wireless hotspot appliances all over the place. Virtually no downtime handling 200 users, per radio, without breaking a sweat. (I have yet to see soho offerings do that!)
The RB500s had PPOE, 2 MiniPCI type IIIa/b slots, and a CF slot for quick flashes (nuking the entire install with a fresh image for a new client took minutes.)
They have updated hardware since last I touched one, the newish RB600 hardware has a daughterboard that allows you to use up to 6 MiniPCI slots for use spread out in large areas or an array. However, the ability to swap out radios means that I'm sure my old clients will still be using the same hardware for some time.
Once you come to understand the architecture of the routerboard offerings you could flash with your own personal favorite Linux flavor, we had a couple Debian installs in our test lab, but don't expect much help from the forums.
The MikroTik OS was to elegant and easy to use to mess around with other Linux installs for practical business solutions.
I've considered picking up a RB500 or 600 for use at home, as it might allow me more time to tinker with Debian on it, and reconfigure the shuttle I'm using now as my router (yeah, its overkill.)
You can check out the key features on their site: http://www.mikrotik.com/