A "smart trainer" allows you to choose exactly what type of training you need. You get to decide which training level you want to combine with what training options and choose which ones work best for you. You can control the amount of resistance and difficulty applied by the trainer through software on your mobile device or on the PC itself. The software controls the trainer, not the other way around.
The smart trainers you find will all differ in resistance unit and build quality; some are more advanced than others, meaning that they differ in the training levels they offer. The software you use with them can be chosen irrespective of the resistance unit. This means that you can train at your preferred training level and as realistic as you want regardless of the training options.
With the help of the software you can organise your training session according to your needs. This way you compile a package that perfectly matches your needs. Instead of using a handlebar computer to communicate with the PC or laptop, you can connect the trainer quickly and easily to the various cycling or desktop apps for tablets or smartphones.
There are many different models and manufacturers of smart trainers on the market, ranging from entry-level to the most-advanced models. Each step up will increase the build quality (and weight!) as well as the options offered.
You can choose from a "resistance" model, in which your rear wheel is connected to a drum that rotates, providing resistance or a "direct drive" trainer where you remove your rear wheel and attach the rear bike dropouts directly to the trainer with an integrated cassette for maximum drive power transfer.