As far as I know, not completely the same way as in C but you could achieve same kind of behaviour with abstract classes and methods. However, you'd need to tell the derived class from which base class it's inherited from so it's not that free.
Also you could use partial classes which are stored in different files but then each partial class only brings new features to already existing definition...
Depending on what you're after, perhaps MEF could be what you need? Have a look at
Managed Extensibility Framework (MEF)[
^]