When using finally block in C# , it is guaranteed that it will run after the try catch block is executed .
When will Finally Block not run in C# ?
There are scenarios when the finally block will not run in C# . If you are forcing the process exit within the try block for example , the finally will not be run .
using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Text; namespace GinktageConsoleApp { class Program { static void Main(string[] args) { try { // Exit immediately Environment.Exit(0); } catch(DivideByZeroException ex) { throw; } finally { Console.WriteLine("Finally Block"); } } } }