List<MyObject> l = new List<MyObject>();
//fill the list
Dictioonary<string,string> d =
l
.Select
(
x=>new
{
x.vendor,
x.unit
}
) //Get only the properties you care about.
.Distinct()
.ToDictionary
(
x=>x.vendor, //Key selector
x=>x.unit //Value selector
);