C#7 では、次のような Is-Expression または Switch ケースで使用できる、patternsと呼ばれる新しい機能が導入されています。
string str = null;
switch(str){
case string x:
Console.WriteLine("string " + x);
break;
default:
Console.WriteLine("default");
break;
}
同じタイプなので、ケース#1の中に入ると予想されますが、そうではありませんでした。