Functional Programming Deep Dive with C# (Udemy.com)
Take your code to the next level with Functional Programming in C#. Improve your software’s architecture. C# 9.0.
Created by: Cory West
Last updated March 2022
What you will learn
- Why functional programming is useful
- Improve your code's quality, readability, and stability
- Design and Implement Immutable Types and Maybes/Options for Nulls
- Impress your peers with high quality code
- Improve your code's quality, readability, and stability
- Improve your own reasoning of software architecture
How it compares
Against the other 194 rated Udemy courses in C# on CourseDuck:
- Rating4.4 out of 5higher than 38% of them
- Reviews60#171 of 195 by number of reviews
- Length3.5 hoursshorter than 67% of them
- Last updatedMarch 2022more recently than 56% of them
Course Description
Take your code to the next level of maintainability, efficiency/concurrency, and ease-of-understanding. Learn the principles of functional programming, how and where to apply it in C#, and why it will make you a better programmer. Improve your software’s architecture and leapfrog your code quality over that of your peers.
What You’ll Learn
Why functional programming is useful
How to apply functional principles and patterns in C#
Design and Implement Immutable Types and Maybes/Options (Null values)
Writing Pure Functions (functions without side effects)
Using recursion with functional programming paradigms to simplify your code
Using LINQ to clean up code and condense logic
Handle errors in functional style
Utilizing extension methods to write fluent, easy to read code.
Make use of new C# 8 and 9 features in functional style
Course Description
Learn how to apply function paradigms and patterns to codebases in C#. If you want to improve the maintainability, understandability, stability, and terseness of your code; this course will help you do that. This is meant for experienced C# developers that already have a solid, moderately deep understanding of the C# language.
Each video will introduce a concept, and lay out an example of implementing that concept.
If you want to improve your code’s quality, make your application faster and easier to understand, and increase your own productivity, then this course will help you tremendously.
Each video in this series can be watched independently. You can get value out of each video by itself if you already know certain concepts or are looking to learn something specific.
Teaching Style
All videos are short, to-the-point, and avoid fluff.
The course covers the following topics:
Theoretical Foundations of Functional Programming
Core Concepts of Functional Programming
Functional Features in C# (C# 9 included)
Immutability, Extensibility, and Extendibility in C#
Dealing with Errors and Nulls gracefully
Course Keywords:
C# Clean Code
C# Best Practices
Functional Programming in C#
C# Functional Programming
Clean Code in C#
Functional Programming
Code Readability
Stable Code in C#
Instructor Details
- 4.4 Rating
60 Reviews
Cory West
I have been learning how to learn, and distill complex concepts and information for many years now. There is a lot of knowledge on the internet locked away behind complexity and poor presentation. I am passionate about distilling and sharing knowledge and helping others improve their lives. I strive to make courses that are in-depth, factually correct, compelling, and obviously helpful. Hopefully, taking my courses will help you become a better, more functional human.
More C# courses
C# Developers: Double Your Coding Speed with Visual Studio (2018)
4.7 (4,035 Reviews)
Provider: Udemy
Time: 2.2h
$13.99
Object Oriented Programming with C# - Beginner to Advanced (2020)
4.7 (2,063 Reviews)
Provider: Udemy
Time: 5.6h
$64.99
Learn Game Development with C# Programming and MonoGame! (2025)
4.7 (1,094 Reviews)
Provider: Udemy
Time: 6.6h
$12.99
Reviews
By Tony Johnson on 2/7/2026
The code is out of date with the latest version of C# and .NET, the section on currying is so awkward with C# it probably shouldn't even be included. The section on recursion should use a recursive data structure like a tree, where it's benefit's really shine.
By Vidya Bhushan on 7/13/2025
The chaining topic could have had more content. FluentAssersions repo has very good design for Fluent API. Other topics are very good to start with for one who is new to FP.
By Pascal Fortin on 2/15/2024
This course is excellent for those who have experience in imperative OOP programming and are looking for a way to simplify their programs. The theory is well explained and the examples are easy to understand. I liked the concept of "code follow along" because executing yourself at the same time helps to understand better.
By Rob van der Heijden on 1/21/2022
It was clear and good to follow. But I already had some experience with the subject. The only thing I hated was the bad audio quality and volume differences between lessons.
By Steve Nyholm on 12/1/2021
This course is teaching me a lot about functional programming in C#. There was a lot more to it than I realized before. Cory does a good job of building the concepts gradually with coding exercises that make it a stronger learning experience. It's amazing how Cory morphs the same functionality through different functional styles as he teaches the concepts.
By Leonard Bogdonoff on 9/29/2021
Cory is a clear communicator and touches on advanced topics in an easy to understand manner. I highly recommend this course and look forward to his future (Milk) work.
By Nelda Pickett on 4/27/2021
Course has good material. Lecturer is better than others with similar courses on here. None accent, easy to understand. I like the material and feel like I am learning a lot. Would definitely recommend for anyone interested in learn Functional Programming.
By Zala Dellan on 4/9/2021
The course is well built. I feel like I am learning a lot. The instructor has a clear voice and explains things clearly. I enjoy the refactor challenges and think he is knowledgeable about what he is teaching.
By Tucker Holland on 3/31/2021
The course is pretty much as promised. I learned a lot about functional programming. There are certain concepts that the instructor does not go deeply into that I would have preferred he explained more. The live coding videos were a nice touch, I enjoyed them. If you followed along like he says I think you could really cement this stuff in your head. I have studied some functional concepts before and while this is a "deep dive" there are some things missing from it. Overall, it is a great course and would definitely recommend to anyone looking to level up their skills.
By Liam Boyle on 3/28/2021
Didn't use c# 9 immutable records, only mentioned either, I didn't get as far to see if railway programming etc had been covered, seemed a pretty basic overview
Quality Score
No CourseDuck member has rated this course yet. Taken it? Give each part a thumbs up or down.
Overall Score : 88 / 100






