Let\'s say you have two different C# classes A and B that while not deriving from the same base class do share some of the same names for methods.
A
B
This will work in C# 4:
public void make_connection(dynamic x) { x.connect() ; // Do some more stuff... x.disconnect() ; return ; }