The most expected person would be Melissa or Wilden, considering the fact that they were the Queen of Hearts, but what if it wasn't them? After all, this is PLL, they try to shock us every chance they get. Besides Melissa and Wilden, two of my suspects would have to be Jason and Toby.
Jason, because, on the train when he was talking to Spencer it was obvious that he didn't like the fact that Garret was out of jail and a free man, he even told Spencer that. And that stab wound that he had in She's Better Now, never did get fully explained. What if he and Garret got into a fight that night and Jason walked away with a stab wound and Garret dead?
Toby, because of the way he looked at Garret in the beginning of the episode. That death glare, was really just that, a death glare.
But, who do you guys think killed Garret?