Publication date : 04/05/2024

Course : Optimizing .NET applications in C# language

Practical course - 4d - 28h00 - Ref. OPA
Price : 2100 € E.T.

Optimizing .NET applications in C# language




This course provides you with a methodology for improving the efficiency of your .NET and .Net Core applications. It will teach you how to use the main performance analysis and diagnostic tools, and will enable you to master the various optimization techniques for coding in the C# language.


INTER
IN-HOUSE
CUSTOM

Practical course in person or remote class
Disponible en anglais, à la demande

Ref. OPA
  4d - 28h00
2100 € E.T.




This course provides you with a methodology for improving the efficiency of your .NET and .Net Core applications. It will teach you how to use the main performance analysis and diagnostic tools, and will enable you to master the various optimization techniques for coding in the C# language.


Teaching objectives
At the end of the training, the participant will be able to:
Mastering .Net application architecture
Diagnose memory allocations and avoid memory leaks
Optimize C# code with reference to the latest versions of C# 7, 8 and 9
Master operations on arrays and collections
Optimize and measure performance gains through parallelism
Coding in C# to solve real-life problems

Intended audience
Developers, engineers, architects, project managers.

Prerequisites
Good knowledge of C#. Experience required.

Course schedule

1
Introduction

  • Evolution of the .Net platform and its ecosystem.
  • Optimize: what, how, when? Objectives.
Hands-on work
Analysis of the execution of a .Net application using the WinDebug tool.

2
GC crumb tray, allocation optimization and diagnostics

  • Memory management using the garbage collector and API GC.
  • Diagnostic tools from Visual Studio, JetBrains and BenchmarkDotNet.
  • The Dispose pattern and the implementation of IDisposable.
  • Recommendations for avoiding potential memory leaks in a .Net application.
  • Design time safeguards via Code Analysis Rules.
  • .Net ecosystem tools for tracing boxing, closure and null reference errors.
Hands-on work
Detecting and correcting memory leaks. Analysis rules and diagnostic tools.

3
C# methods and language constructs

  • C# methods and the evolution of coding.
  • Extension methods and LINQ architecture.
  • Asynchronous methods and use of async/await keywords.
  • Performance measures for Value allocations compared with Reference allocations.
  • New ValueTuple value type in C# 7.0.
  • Parameter passing and return by reference in C# 7.2.
  • Advantages of functional programming in C# and comparison with the F# functional language.
  • Pattern Matching in C#.
Hands-on work
Exercises and hands-on demonstrations of coding elements and functional programming.

4
Paintings and collections

  • Performance of data operations.
  • .Net collections and features.
  • Implementation of the IEquatable interface.
  • IntPtr pointer and the C# 7.2 stackalloc keyword to allocate on the stack.
Hands-on work
Exercises and demonstrations on collections and allocations on the stack.

5
The .Net 4.7 TPL library: asynchronism and parallelism

  • Evolution of asynchronous call management via async/await keywords.
  • The new System.Threading.Tasks classes.
  • Parallelizing for and foreach iterations. Design pattern for parallelism.
  • Using the PLinq infrastructure.
  • Performance diagnostics via NuGet BenchmarkDotNet and JetBrains DotTrace.
Hands-on work
Exercises and demonstrations on parallelism. BenchmarkDotNet diagnostics.

6
Conclusion

  • Impact of C# 8 and C# 9 features on .Net code and applications.
  • A summary and a few tips.
  • Book recommendations and Internet references.


Customer reviews
4,1 / 5
Customer reviews are based on end-of-course evaluations. The score is calculated from all evaluations within the past year. Only reviews with a textual comment are displayed.
SANDRA S.
17/06/25
4 / 5

Some of the subjects were a bit long for my taste, but I think that's because I already knew them.
GHALBZOURI ASMAE E.
17/06/25
5 / 5

Comprehensive and very interesting content with course support and practical exercises.
ERWAN R.
10/06/25
5 / 5

The course is very well designed, combining clear theory with well-structured practical exercises. The practical exercises are particularly useful for applying the concepts learned, and illustrate in concrete terms the advantages, such as improved performance, as well as the possible disadvantages, such as the complexity or limitations of certain approaches.



Dates and locations
Select your location or opt for the remote class then choose your date.
Remote class

Dernières places
Date garantie en présentiel ou à distance
Session garantie

REMOTE CLASS
2026 : 24 Mar., 16 June, 29 Sep., 8 Dec.

PARIS LA DÉFENSE
2026 : 24 Mar., 16 June, 29 Sep., 8 Dec.