bool condition = true;
string input = "b";
switch (input)
{
    case "b":
        if (condition)
        {
            Console.WriteLine("B");
        }
    default:
        Console.WriteLine("Default");
        break;
}
C++:
B
Default
bool condition = true;
string input = "b";
switch (input)
{
    case "b":
        if (condition)
        {
            Console.WriteLine("B");
        }
    default:
        Console.WriteLine("Default");
        break;
}
C++:
B
Default
 
    
    you missed a break after case,
bool condition = true;
string input = "a";
switch (input)
{
    case "b":
        if (condition)
        {
            Console.WriteLine("B");
        }
        break; // You missed break;
    default:
        Console.WriteLine("Default");
        break;
}
C# does not allow to execute more than one case which is logically incorrect so prevented by C# compiler.
