I heard that in Java 8 there is a flexibility of having function definitions in an Interface. I think we can have some default state with this feature in all the classes that are implementing such interface.
So, my question is do we have any such feature in C# as of today? Are there any plans from Microsoft on this regard ?
I agree with the statements made in the comments so far - C# doesn't support this. As far as I know there's no plan to support this in C#, nor should it be supported. I disagree with Java 8 including this feature as well; I think it conflates interfaces and abstract base classes. As @AntP said in the comments, interfaces should be contracts (not to specify behavior).
Here are two possible designs that accomplish the same thing (and sorry about the hastily-drawn UML):
Basically, point being you can either create an abstract base class that adds default implementations for all child classes, or you can have a base class for some of the child classes that implements the interfaces if that's what you're trying to do.
Obviously other designs are possible, this diagram is mostly just for the purposes of illustration.