Overview of the Azure Storage client libraries

The Azure SDKs are collections of libraries built to make it easier to use Azure services from different languages. The SDKs are designed to simplify interactions between your application and Azure resources. As your code interacts with Azure Storage resources, you can use client libraries to manage resources and work with data.

The Azure SDK provides two sets of libraries for working with Azure Storage resources. One set of libraries builds on the Azure Storage REST API, and is designed to handle data access operations for blobs, queues, and files. These libraries are sometimes referred to as the data plane. Another set of libraries builds on top of the Azure Storage resource provider REST API, and is designed to handle resource management operations. These libraries are sometimes referred to as the management plane.

In this article, you learn about the management and data plane libraries, and when to use each set of libraries as you build your application.

Important

This article covers the latest Azure Storage client libraries. These libraries are updated regularly to drive consistent experiences and strengthen your security posture. Older libraries no longer receive official support or updates from Microsoft. It's recommended that you transition to the new Azure SDK libraries to take advantage of the new capabilities and critical security updates.

Libraries for data access

Data plane libraries build on the Azure Storage REST API, allowing you to interact with blob, file, and queue data. These client libraries provide a set of classes that represent the resources you interact with, such as blob containers and blobs. These classes provide operations to work with Azure Storage resources. For example, you can use the Blob Storage client libraries to upload and download blobs, list containers, and delete blobs.

The following table shows the Azure Storage client libraries for data access:

Library Reference Package Source
Azure.Storage.Blobs Reference NuGet GitHub
Azure.Storage.Blobs.Batch Reference NuGet GitHub
Azure.Storage.Common Reference NuGet GitHub
Azure.Storage.Files.DataLake Reference NuGet GitHub
Azure.Storage.Files.Shares Reference NuGet GitHub
Azure.Storage.Queues Reference NuGet GitHub

To learn more about using the Blob Storage client library for specific data access scenarios, see the Blob Storage developer guide for .NET.

In most cases, you should use the data plane libraries to work with Azure Storage resources. However, for resource management operations, such as creating or deleting storage accounts, managing account keys, or configuring failover scenarios, you need to use the management plane libraries.

Libraries for resource management

Management plane libraries build on top of the Azure Storage resource provider REST API, allowing you to manage Azure Storage resources. The Azure Storage resource provider is a service that is based on Azure Resource Manager and provides access to management resources for Azure Storage. You can use the management plane libraries to create, update, manage, and delete resources such as storage accounts, private endpoints, and account access keys.

The following table shows the Azure Storage client library for resource management:

Library Reference Package Source
Azure.ResourceManager.Storage Reference NuGet GitHub

To learn more about using the Azure Storage management library for specific resource management scenarios, see the Azure Storage management library developer guide for .NET.

Next steps