1) Сконцентрируйтесь на правильно нормированном дизайне базы данных. Я бы сказал, что когда вы вынуждены делать компромиссные решения в своем коде по сравнению с дизайном базы данных, если производительность - ваша цель, сделайте компромисс в своем объектном дизайне вместо вашего дизайна базы данных. Поймите, что вы не сможете создать правильный дизайн базы данных супертипов / подтипов, который будет работать с Linq to SQL (мне сказали, что вместо этого вам нужно использовать EF).
2) Зависит от того, что вы имеете в виду здесь. Если вы спрашиваете, как бы вы сериализовали анонимные классы по сети, простой ответ: «вы не можете, поэтому не пытайтесь». Если вы хотите разместить списки объектов по сети, просто используйте метод расширения ToArray () в своих коллекциях IEnumerable, чтобы передавать массивы ваших бизнес-объектов по сети.