Course Summary
Start course

This course is an introduction to Azure Functions. It explains how Azure Functions are little bits of your application logic that live in the cloud. The course includes how to activate—or what we call trigger—your Azure Functions, how to pass data to and from them, and also how to tie different Azure Functions together using an extension of Azure Functions called Durable Functions. 

This course provides hands-on demonstrations of how to create different kinds of Azure Functions, how to create bindings to other Azure Services from those functions, and how to create a Durable Function to manage state from one Azure Function to the next.

If you have any feedback related to this course, please contact us at

Learning Objectives

  • Create Azure Functions with different types of Triggers
  • Implement input and output bindings to different types of data resources
  • Create Durable Functions to orchestrate related Azure Functions
  • Log the results with Dependency Injection

Intended Audience

Software developers who want to learn how to implement Azure Functions as a part of their cloud software design.


To get the most out of this course, you should have some experience will the following:

  • Event-driven programming
  • Servers and APIs
  • Coding with C# and JSON
  • Project creation in Visual Studio


The GitHub repository for this course can be found here.


That concludes our introductory look at Azure Functions. We've seen that Azure Functions are actually just little bits of your application logic that you can have reside in the cloud as a part of your general software architecture, and they can perform on demand pretty much anything that you want them to, using a variety of triggers such as timers or data events or HTTP triggers, as if they were regular API endpoints.

You have the ability to string together different bindings of a wide range of data sources and resources such as queue, BLOB, Azure tables, etc, etc, that you can weave all of these things together into a sequence of bindings and triggers that allow you to really dictate a logical flow of data or processing through one piece of your application logic. That's just one way to orchestrate Azure Functions together.

The formal Azure Functions way of orchestrating things together is by using Durable Functions. We've seen that Durable Functions can, through the use of orchestration, call other Azure Functions that can pass data to and from each other using the orchestration function as that sort of nexus that lets you be in complete control of logical and data flow.

So, hopefully, you've seen some things within Azure Functions that get you excited to use them. Hopefully, you can apply them to the benefit of your enterprise coding structure soon. Thank you again for taking my course. I hope you enjoyed it, I hope you got a lot out of it. Happy coding!

About the Author

David Gaynes is a software and cloud architect for .NET, NodeJS, Azure and AWS. He has been developing .NET and Cloud software for more than 20 years, with some of that time spent at Microsoft, and has authored both technical and non-technical teaching materials as books and in other formats. He enjoys physics, meditation, and experiencing the natural wonders of Hawaii.