City of Ashes has more angels and demons than your average Dan Brown book. On the angels side, we have the Shadowhunters—Jace, the Lightwoods, Clary trying her best—and on the demons side are… well, demons.
The catch is that the demons are inherently evil, but these angels… they're not all that saintly. So this isn't clear-cut case of good and evil, but a more complicated battle between not-entirely evil and pure evil. It's even more dramatic than the classic G vs. E.
Questions About Good vs. Evil
Is Valentine evil? Are Jace and the Shadowhunters good?
Do you think Jace would ever choose to unite with his father, Valentine?
Why won't the Downworlders unite together to battle Valentine?
Chew on This
The human (and human-like) characters in the book are always more complicated than simply being good or evil. Only the demons are pure evil because they can't change their natures like humans can. Poor demons.
Clary wishes she could go back to her life before, when it was a simpler time. When good and evil clash, it's almost always a violent struggle to the death, with people stuck in the middle.