Early Binding describes that compiler knows about what kind of object it is, what are all the methods and properties it contains. As soon as you declared the object, .NET Intellisense will populate its methods and properties on click of the dot button.
Late Binding describes that compiler does not know what kind of object it is, what are all the methods and properties it contains. You have to declare it as an object, later you need get the type of the object, methods that are stored in it. Everything will be known at the run time.
Application will run faster in Early binding, since no boxing or unboxing are done here.
Easier to write the code in Early binding, since the intellisense will be automatically populated
Minimal Errors in Early binding, since the syntax is checked during the compile time itself.
Late binding would support in all kind of versions, since everything is decided at the run time.
Minimal Impact of code in future enhancements, if Late Binding is used.
Performance will be code in early binding.