Question: ```
 class Program
 {
    static void Main(string[] args)
    {
        string Studentname;
        string retry = "No";

        Console.WriteLine("What is the Student's name? ");

        while (retry != "No")
             Console.WriteLine("What is the Student's name? ");

        Studentname = Console.ReadLine();

        switch (Studentname) {
            case "George":
                Console.WriteLine("Yes in the list");
                Console.ReadLine();
                break;

            case "Goblin":
                Console.WriteLine("Yes in the list");
                Console.ReadLine();
                break;

            case "Peter":
                Console.WriteLine("Yes in the list");
                Console.ReadLine();
                break;

            case "TJ":
                Console.WriteLine("Yes in the list");
                Console.ReadLine();
                break;

            default:
                Console.WriteLine("Not in the list");
                Console.WriteLine("Would you like to retry?");
                retry = Console.ReadLine();
                break;
        }
    }
}

```

I'm trying to loop around the case statement if the answer is incorrect, however the statement always breaks and I am unable to loop. How would I solve this issue?

Answer: 
The keyword "break" only breaks out of the first code block (space in-between the {...}) it is in. The break in your switches shouldn't interfere with your while loop at all.

The issue is that you have no brackets after your while loop so it only acts on the line directly after.

Below is probably what you were looking for.

```
class Program
{
    static void Main(string[] args)
    {
        string Studentname;
        string retry = "No";

        Console.WriteLine("What is the Student's name? ");
        do
        {
            Console.WriteLine("What is the Student's name? ");
            Studentname = Console.ReadLine();

            switch (Studentname)
            {
                case "George":
                    Console.WriteLine("Yes in the list");
                    //Console.ReadLine();
                    break;
                case "Goblin":
                    Console.WriteLine("Yes in the list");
                    //Console.ReadLine();
                    break;
                case "Peter":
                    Console.WriteLine("Yes in the list");
                    //Console.ReadLine();
                    break;
                case "TJ":
                    Console.WriteLine("Yes in the list");
                    //Console.ReadLine();
                    break;
                default:
                    Console.WriteLine("Not in the list");
                    Console.WriteLine("Would you like to retry?");
                    retry = Console.ReadLine();
                    break;
            }
        } while (retry != "No");
    }
}

```

EDIT: Your while loop also was never entered. You set "retry" to "No" then check if it is not "No". To solve this you can either use a "do ... while()" loop which always loops at least one time or you can change the first assignment of "retry" to anything but "No".

EDIT 2: @Kason is correct. I didn't realize your actual goal was to exit if the name was found. If that is the case then a "do ... while()" is your best option.
Add a left curly brace after the while statement, and a matching right curly brace at the bottom of your code.