Un DateTime in C# è un oggetto immutabile che contiene informazioni sia sulla data che sull'ora. Le informazioni sulla data e sull'ora sono accessibili tramite le sue proprietà incorporate.
La modifica di un DateTime può essere effettuata chiamando uno dei suoi metodi. Poiché i valori DateTime non possono mai cambiare dopo essere stati definiti, tutti i metodi che sembrano modificare un DateTime in realtà restituiscono un nuovo DateTime.
Il confronto tra istanze di DateTime può essere effettuato utilizzando gli operatori di confronto predefiniti (<, >, ecc.). La data (e l'ora) corrente può essere recuperata tramite la proprietà DateTime.Now.
Un aspetto importante delle date in C# è che dipendono dalla cultura. Di conseguenza, qualsiasi metodo DateTime che ha a che fare con le string dipenderà dalla cultura corrente. Ciò include il metodo DateTime.Parse() che analizza una string in un DateTime, così come il metodo ToString() della classe DateTime che converte un DateTime in una string.