The Difference Between Covariance and Contravariance in .NET C#

Have a hard time understanding it? Let me simplify it for you.

If it is so hard for you to understand what Covariance and Contravariance in .NET C# mean, don’t feel ashamed of it, you are not alone.

It happened to me and many other developers. I even know experienced developers who either don’t know about them or are using them but still can’t understand them well enough.

You can search the internet and you will find tons of resources about this topic. You will come across definitions, history, when introduced, code samples… and many others and this is not what you would find in this article. I promise you that what you would see here is different….