Como lidar com XML em c #

Qual é a melhor maneira de lidar com documentos XML, XSD etc em C # 2.0?

Quais classes usar etc. Quais são as práticas recomendadas para analisar e criar documentos XML etc.

EDIT: .Net 3.5 sugestões também são bem-vindas.

questionAnswers(12)

yourAnswerToTheQuestion