Lillie is the first thing you, running from Aether Foundation for some reason. When you meet her, she is need of help, and you see just how weak she was. She also seems like a very sheltered and kind of weird girl. Then for a while, you get to know her and get more accustomed to her character. She has a likeable personality, so it isn't hard to get attached to her. I see people complaining about her being a moeblob, but really, dhe's pretty human.
Later on, It turns out that the Aether Foundation she was running from is actually lead by her own mother, who has gone sort of crazy. You get to know her past, how she was treated by her mother and why she ran away, and her personality makes a lot more sense now. She was also controlling, and that has lead to Lillie being incapable doing things on her own, making decisions on her own and just having overall low self confidence. Her personality is a direct result of what she experienced in past, and her goals also stem from that. This is also a great thing, and something a lot of characters in general lack.
As she continues to travel with you, and now you know why, she meets a lot of characters, gets to know them and learns from them to get stronger as a character. She builds up more confidence and with the outfit change, she takes the first step towards actually being free. She then goes on to confront the her mother for the first time, all with mostly the help of one person whom she randomly met.
By the end of it all, she's strong enough to leave for a journey, all on her own, to save that very same mother of hers. The Pokemon she fought for, she give recognizes it has also grown like her, and gives it complete freedom to whatever it wants.
To me, this is a great character. As I said in the beginning, she feels human. I relate to her and easily understand what she's going through. People call her generic, though I've yet to seen anyone even similar to this. I hate it that she gets that simply because she looks cute.