I\'m trying to learn how finalization and destructor works in C#, I tried to run the code in the System.Object.Finalize example(code copy-pasted, no changes made), but the o
Finalization won't occur until the garbage collector runs. Garbage collection doesn't run unless it needs to (e.g. you're low on memory), or if you force it to run.
Try adding
System.GC.Collect();
to your code and see if the finalizer runs in that situation.