Tower of Thorns by Juliet Marillier
Synopsis from GoodReads:
Disillusioned healer Blackthorn and her companion, Grim, have settled in Dalriada to wait out the seven years of Blackthorn’s bond to her fey mentor, hoping to avoid any dire challenges. But trouble has a way of seeking out Blackthorn and Grim.
Lady Geiléis, a noblewoman from the northern border, has asked for the prince of Dalriada’s help in expelling a howling creature from an old tower on her land—one surrounded by an impenetrable hedge of thorns. Casting a blight over the entire district, and impossible to drive out by ordinary means, it threatens both the safety and the sanity of all who live nearby. With no ready solutions to offer, the prince consults Blackthorn and Grim.
As Blackthorn and Grim begin to put the pieces of this puzzle together, it’s apparent that a powerful adversary is working behind the scenes. Their quest is about to become a life and death struggle—a conflict in which even the closest of friends can find themselves on opposite sides.