Which is better for what? Weight loss? Weight gain? Overall health?
The best thing is to combine them for extra-ordinary results.
I do weight training, because I enjoy doing it and there is no better movement that can help me build a lean, muscular and symmetric physique. Its a very time efficient activity too. In just few hours a week you can get so many benefits. However, there are many prevailing mythsabout weight training which needs to be busted too!
At the same time, I do 10 minutes of Yoga everyday. I enjoy the mind-body connection and it really calms me down. I combine the asanas with pranayam and meditation for best results.
Do you feel the same way about any activity, the same way I feel about weight training?
If yes, then do that. Of course, do try out weight training, swimming, HIIT or Yoga.
Inculcate what you enjoy, discard the rest:)