StarManta’s post is right on, and additionally you can do a lot with interfaces.
For instance in C# you can only inherit from one thing, eg, an Enemy.
Something might have other characteristics that are shared by many different objects and this is a great use for interfaces, which you can implement as many of them as you want.
Using Interfaces in Unity3D:
Check Youtube for other tutorials about interfaces and working in Unity3D. It’s a pretty powerful combination.