If the city is trash, I prefer selling it for a song to another civ. I don't raze often. Usually if I raze, it's because it's in a rich general area, but the exact tile is a poor choice. Or if I'm toying with the AI early game and am expecting a re-settlement.
I win domination games with as few as two non-puppet cities very regularly. The reason I need lots of cities is to keep up in science; and puppets do that fine. If I annex, usually it's to build non-land units, to faith purchase something, or to buy a tile. Very rarely I might annex a large city to help with world's fair.