IMHO the problem is allowing changes to terms and conditions for existing contracts. If I have a contract with a company, that contract was made under existing T&C. The company should not be able to change those conditions without my explicit permission. Denying me service if I disagree should not be a valid option. I get this periodically on our overly-computerized car: Here are new T&C, click yes to agree. You can…
The other side of this is that companies do want to change their T&C from time to time, so what do they do, force you to quit and then sign up again? That adds a lot of friction. Or do they tag things and say "Customer X signed up on this date, so he is bound by T&C number 12, whereas this other customer signed up a year later and is bound by T&C number 13". That seems unwieldy since there is a common infrastructure.…
Otherwise, force the user to accept the new terms affirmatively. Then offer to refund any money if the user does not.