C# Generic Queue Tutorial with Programming Example