There are legit uses for goto in certain kinds of technical programming like interpreters but there are other ways to do it, similarly that example above is legit but if you are properly dividing your code up into subroutines you don't run into a lot of places where you'd want goto or labeled break/continue, especially in applications programming where you're not going to write sorts or numerical algorithms... Like I'd be likely to reach for it doing the kind of work that I'd be looking in an algorithms book.