In C you'd also have the option of a switch fall-through (admitting DoSomethingElse() doesn't require DoSomething() to be executed first) but C# doesn't allow for it. But, going from the name, are you writing a state machine? If so, you always have the choice of having the two blocks being methods called on your current state and which potentially returns the next state. Which could be better (or not) depending on if you have, say, other states calling only DoSomethingElse() and how many states you have in total.