Is there any free or commercial component written in .NET (no COM interop) that will work with most twain scanners?
Take a look at CodeProject: .NET TWAIN image scanning That might give you a good start.
Microsoft have an API all about scanning. It's called Windows Image Acquisition and you can read a great Coding4Fun article about it by none other than Scott Hanselman here.
Just started a project in .net and found great info here about using Windows Image Acquisition. Lots of sample VB code and some c#.
Disclaimer: I work for Atalasoft
Atalasoft has a product, DotTwain, which has no COM interop (just direct calls to the twain dll from .NET) and gives you a completely .NET interface. It can be embedded in a browser hosted WinForms control, for instance, because it doesn't use COM.
The Accusoft Pegasus .NET component is called TwainPRO, and it's included in the ImagXpress SDK.
The ImageGear .NET toolkit from Accusoft Pegasus also includes a full-managed implementation of Twain.
TwainDotNet
I've just wrapped up the code from Thomas Scheidegger's article (CodeProject: .NET TWAIN image scanning) into a Google code project: http://code.google.com/p/twaindotnet/
I've cleaned up the API a bit and added WPF support, so check it out. :)
+1 for Atalasoft
Technical quibble: You can avoid COM, but you can't avoid Interop: TWAIN is a native Win32 or Win64 DLL that is not part of Windows proper and is unknown to the CLR, so at the bottom, either in your code or the component you use, there are Interop calls to unmanaged code. Given what I know about TWAIN drivers, maybe I should say to very unmanaged code...
I've always had the impression that WIA was great for digital cameras, OK for consumer flatbeds, and not a serious contender for 'production scanning' - meaning something like full-speed multipage scans from a document feeder, under application control, using a USD400+ scanner. I've never heard of anybody doing production scanning through WIA, but I'd sure like to hear from somebody who's done this.