Generics C#

using System;
using System.Collections.ObjectModel;
using System.Collections.Generic;
using System.Text;
using System.Runtime.Serialization;
public class CollectionTest {
    public static void Main() {
        Collection intCollection = new Collection();
        List strList = new List();
        strList.Add("Val1");
        strList.Add("Val2");
        Collection strCollection = new Collection(strList);
        foreach (String strVal1 in strCollection)
            System.Console.WriteLine(strVal1);
        strList[0] = "Val Changed";
        foreach (String strVal2 in strCollection)
            System.Console.WriteLine(strVal2);
    }
}