Dictionary > saleItemNew = new Dictionary> (); saleItems = new List ();
Adding the List to the dictionary is just a shallow copy... A new list with the same values is not created and added (a deep copy); rather a reference to the old list is added.