DateTime vs DateTimeOffset in C#: when and what to use?
Hello colleagues! I'm a beginner C# developer and I've run into a dilemma: I can't understand when to use DateTime and when to use DateTimeOffset. Both types seem to store date and time, but what is the fundamental difference?\n\nI have a web application that works with users from different time zones. I need to save the user's registration date. Currently I'm doing this:\n\n```csharp\nDateTime registrationDate = DateTime.Now;\n```\n\nBut then I read that `DateTime.Now` depends on the server's local time. If the server moves to a different time zone or daylight saving time changes — the data may "drift". Also someone suggested that there is `DateTimeOffset`, which stores the offset from UTC.\n\nQuestions:\n1. What is the difference between DateTime and DateTimeOffset?\n2. Which type should I choose for storing events in a da