This is probably the easiest part of designing a self-balancing scooter. Mainly because of the minimal number of parts involved, and some shameless self-promotion on my part.
The control system is made up of the parts that think and react to the state of the scooter. For example, if the batteries are the blood and the motors are the muscle, the control system is the brain of the scooter. It consists of only two main parts: the microcontroller and the motor controller.
For the sake of simplicity, I won't cover much of the microcontroller theory. But this is what the Tilty Duo and Tilty Quad were designed to do. They are, in simple terms, small computers programmed to only do one task, but to do it well. So although they cannot run programs with interfaces like a PC, they can run one program (by default designed to balance, but it can be changed) very well and very quickly. The Teensy 3.0 used by the TiltyIMU controllers is the actual microcontroller itself, with the rest of the circuit board being used primarily to attach sensors, add memory, and add connectivity. The actual microcontroller chip of the Teensy 3.0 is highlighted on the picture below.
And although other microcontrollers can be used to build a self-balancing scooter, the Tilty controllers are the only ones to incorporate the sensors, memory, and exceedingly powerful processor onto a single circuit board.
Motor controllers, like microcontrollers, come in a wide variety with various benefits and drawbacks. The most important thing to be sure of, though, is that you buy a motor controller that is compatible with your types of motors. If you're using brushless motors you need a brushless motor controller, and vice versa for brushed motors. If you're not sure which motor type you have, count the wires. If your motor has 3 wires, it's likely brushless, if it has only 2 wires it's definitely brushed. For an example, you can tell the the top motor in the picture below is brushed, while the bottom motor is brushless, by counting the wires going from the motors to the motor controllers.
The other thing to consider for a motor controller is output current. Most motor controllers will give a max output current (like 50A for 50 amps continuous output). If your motors draw more current than your motor controller can supply, the motor controller will get hot, and potentially burn itself out.
And lastly, if you're going to be using a brushless motor controller, make sure it can turn a motor both forward and backward. Many brushless motor controllers are only capable of driving the motor in one direction, as brushless motors are usually used for thing like bike wheels, which are only ever driven in one direction.
That said, if you're using brushed motors (as is likely), I recommend using the Sabertooth 2x25 dual motor driver. I've been using it since I built my first self-balancing scooter years ago, and it has served me extremely well. The one time it died (due to a short circuit that was my fault) the manufacturer had me ship it to them and repaired it within a few days free of charge (even though it was several years old and well out of warranty at that point).
I'm afraid I can't recommend a brushless motor controller, as I've never built a self-balancing scooter using brushless motors. But if you choose to take the brushless route, be sure to do your research!