Sorry I have removed this post because I was not satisfied with it.
There are a lot of great articles out there about this topic already.
One article I can recommend for further reading: http://www.codeproject.com/Articles/890/Bridge-Pattern-Bridging-the-gap-between-Interface