In un programma "vuoto":
1 class Foo
2 {
3 static void Main()
4 {
5 }
6 }
la sessione di debug inizia, nel caso di questo codice, direttamente con la riga 5 ("the next statement that will be executed").
Poi, si sa che per il codice dopo un:
for(;;);
si ottiene un warning "Unreachable code detected", appunto perché il compilatore scopre il fatto che quella porzione di codice non sarà mai eseguita. Ciò vuol dire che, per il seguente codice:
1 class Foo
2 {
3 static void Main()
4 {
5 for(;;);
6 }
7 }
non esiste alcuna riga su cui il debugger si possa fermare! :-)