You acctually have a few options:
1) TWAIN
which is an API that "regulates communication between software and digital imaging devices" and runs under LGPL license,
see Wikipedia
see Homepage
2) Windows Imaging Acquisition
which is proprietary with Microsoft. "The WIA platform enables imaging/graphics applications to interact with imaging hardware and standardizes the interaction between different applications and scanners."
see Wikipedia
see Homepage
3) Image and Scanner Interface Specification (ISIS)
which provides a full SDK for .NET applications, so probably the most helpful one to you, but is paid solution,
see Wikipedia
see Homepage
4) Do it on your own
If you want to create a communication layer on your very own you have to ensure at least that the device has valid USB drivers. To access any hardware you will have to introduce unmanaged code (i.e. c++) since most of these device drivers provide c++ APIs, that means create a library for basic IO operations and then create a c# wrapper for your application.