I use both Zwift and Sufferfest (now rebranded as Wahoo SYSTM).
Zwift is great for simulated rides and races, but I find the training plans are too limited. Better than nothing, but I think SYSTM, TrainerRoad and Training Peaks all offer way better long term structured training plans. In Zwift structured training just seems like an afterthought. Although the workout builder is quite good if you are importing or copying plans from elsewhere. I sometimes do my No-vid Sufferfest sessions in Zwift.