Trainers can be organized into many different categories, but when it comes to Zwift, you’re either on a “smart” trainer or a “dumb” one.
A smart trainer’s resistance is controlled by Zwift. When the incline of the Zwift course changes, your resistance changes. You “feel” the hills. Additionally, a smart trainer will broadcast your power (and usually cadence) via ANT+ and Bluetooth.
A dumb trainer is not controlled by Zwift. You may be riding up and down hills on the Zwift course, but you’ll feel no difference in the resistance because your Zwift has no way of talking to your trainer. Dumb trainers do not detect your power or cadence.
Smart trainers and Zwift use the ANT+ FE-C protocol (ANT+ “Fitness Equipment–Controls”–it’s an ugly name, but the results are beautiful.)
Before this protocol was standardized, various trainer brands spoke their own “language”–so if you owned a Tacx trainer, you had to use the Tacx software to control the trainer.
ANT+ FE-C is an “open” protocol, allowing any trainer which speaks this “language” to be controlled by any software which also speaks it. It’s a brave new cycling world.