> 
> **Possible Duplicate:**  
> 
> [List<int> in c#](https://stackoverflow.com/questions/3208574/listint-in-c) 
> 
> 
> 

I have the following program. I am confused about the output. 

The line -  

 Console.WriteLine(listIsARefType.Count) prints 0 instead of 1. Any idea why ?. 

```
class Program  
{  
   static void Main(string[] args)  
   {  
      ListTest d = new ListTest();  
      d.Test();  
   }  
}

class ListTest   
{   
    public void  ModifyIt(List<int> l)
    {
        l = returnList();
    }

    public void Test()
    {
        List<int> listIsARefType = new List<int>();
        ModifyIt(listIsARefType);
        Console.WriteLine(listIsARefType.Count); // should have been 1 but is 0
        Console.ReadKey(true);
    }

    public List<int> returnList()
    {
        List<int> t = new List<int>();
        t.Add(1);
        return t;
    }
}

```