There are many auto-complete/auto-suggest web controls around, and when I needed AJAX functionality to get the data from the server dynamically, in preferably an ASP.NET control, I started using the excellent "Implementing an Ajax.NET-based Lookup Server Control" on CodeProject.
This is a nice control that works in with AJAX.NET and has many configurable properties. Unlike some of the other similar controls I've found, it also supports keyboard selection of the returned matches (using the up and down arrow keys). And, since it uses AJAX.NET, it can take advantage of Session variables (should you need them). All this is packaged into a...