I vastly prefer Hearts of Stone.
Yes, Blood and Wine gives you an interesting and big new land to explore, with new enemies, quests, and an interesting enough story…
But Hearts of Stone’s story is just so much better. (and HoS actually opens up a tiny sliver of the regular map, expanding it a few miles east and north)
The tragedy of Olgierd Von Everec is deep and intriguing. The whole Witcher 3 DLC is centered around learning the past of this nobleman, and how he turned from a decent guy to an immortal bandit leader.
Compared to Olgierd, Detlaff (Blood and Wine’s villain) is a one-dimensional villain (intentionally so, because Vampires operate on a much more basic set of morals than humans), with weak motivation, and he’s portrayed as a sympathetic monster, even though he is obviously very evil.
The secondary, and more evil villain of HoS, Gaunter O’ Dimm, is indeed much better of a villain than Rhena, the secondary and more evil villain of BaW.
Gaunter is a unique and unknown apparition, who is holding Geralt hostage throughout HoS; He is easily one of the best things to come out of The Witcher 3 DLC.
Rhena is just a sociopath. And Detlaff loves her. Though he shouldn’t. That’s it.
And seriously, the boss fights in Hearts of Stone are unique and awesome. The Toad King, Olgierd, the caretaker, and the puzzle fight with Gaunter… All amazing.
The boss fights in Blood and Wine, less so.
Yepper, Hearts of Stone better.