The Don't Repeat Yourself principle is important. But it's not the only important principle or consideration for software design. Like all good things it should be used with caution and afterthought.
I love C#. Jon Skeet's C# in Depth has given me even more reason for loving the language. A small example is a nice little way of not having to specify generic type parameters when creating objects of a type with type parameters.