The two main differences are that you may throw any object, not just exceptions and that the catch parameters use Tangent types. So the catch uses structural subtyping to see if an exception matches it. Not big changes, just little things to keep the feel of the language consistent.
The example test code of the day:
public static main()=>void{ try{ //throw "moo."; //throw 42; throw 3.14; }catch(string speech){ Console.WriteLine(speech); }catch(int count){ Console.WriteLine(count); }finally{ Console.WriteLine("finally."); }}