Have been thinking about this thread overnight.
I think there are obviously positives and negatives to setting. The positives are that it's inevitable that some children will be more able than others, and it does reach a point where you are teaching fundamentally different work, and normal classroom differentation is just not possible. (at Ks2 this might be seen best when comparing work done by a group of children working towards L4 with a group of children working at L6). This is more pronounced at secondary.
The negatives are that the children in lower sets may feel discouraged, and 'thick', and children at the edges of the sets may be put into sets to make the numbers work, rather than purely on ability (and I know this does happen). If a parent or child is not very clued up about sets and not in contact with the school, this could have long lasting effects. Also, the children in the mid range will lose the benefits of being with the more able children (which statistically pulls them up too).
So it's a case of balancing the good with the bad. And certainly if you start making decisions about other subjects based on, say, maths ability, you're going to let some children down.
If you're going to have sets, they should be purely ability based, even if that means the top set is huge, they should be fluid, with the possibility of moving between the sets (and in subjects where the top set may be doing different material, if a teacher feels a child should be in the top set, then perhaps the teacher needs to make up the ground lost with the child), and lower ability sets should be very carefully handled, with a lot of thought as to how the child feels being in that set.
At primary, there are often reading groups, and this has 2 bad effects that I can see - firstly that parents can be very competitive about which group their child is in (and everyone knows which is the top group, whatever creative name it's given!), but also, being in the bottom group, especially for summer born children, and often particularly summer born boys, can reinforce the idea that they are stupid, when they are just young and not really ready for school at all. I would totally advocate having 'extended playgroup' (which could be all day, and mirror the school day), but didn't do much reading/writing/sums, but more running around, creative play, drama, music, sport, to avoid losing the less ready children right at the start.
In Canada and other countries they do this, by age 11 they've overtaken the English children. Not rocket science to see that starting earlier doesn't actually equate to better results.