Since most of my quilts go to PL, I wash them with regular detergent and hot water since I figure that's the way they'll be washed by the recipient. There is a product called "quilt wash" that you can get at any quilt shop that's more gentle than regular detergent. And you should use cold water when washing. But I think there's probably always going to be some fading over time.
Here's a nice article on washing a quilt. I noticed that she recommends washing it a second time but with no detergent to get rid of any remains of the detergent which can damage your quilt.
http://www.quilting101.com/care/quilt-washing.html