This chapter examines ADO.NET functionality in a connected environment, which means you won't be storing data in memory. You'll be reading and storing data in data sources. You access data from a data source and save data back to the data source with the help of a bridge between the application and the data source; in ADO.NET this bridge is a data provider. ADO.NET provides many data providers for working with different data sources to make data access fast, reliable, and easy to use. Each data provider has data components (classes) that let you connect to a data source and read, write, add, delete, and update data. This chapter examines these components and shows how to use Windows data-bound controls to bind data with ADO.NET components.