Programcılıkta bilindiği üzere tüm dillerde hata oluşma olasılığı yüksektir.Bu hatalar gerek kullanıcılar tarafından gerekse programın çalışması için gerekli olan diğer yardımcı unsurların düzgün olarak çalışmamasında ortaya çıkar.
        C# da bu hataları yakalamak için bazı yöntemler vardır.Bunlar ya try-catch ya da try-catch-finally dir.

try-catch blokları

try
{
Hataya müsait olan kodlar
}
catch
{
Hata oluşursa işleyen kodlar
}

try-catch-finally blokları

try
{
Hataya müsait olan kodlar
}
catch
{
Hata oluşursa işletilen kodlar
}
finally
{
Her halükarda işletilecek olan kodlar
}

try
{
Hataya müsait olan kodlar
}
catch(OverflowException Hata)
{
Hata oluşursa işleyen kodlar
}
catch(Exception Hata)
{
Messagebox.Show(Hata.Message());
}