Reflection საშუალებას აძლევს პროგრამას შემოწმდეს და მანიპულირებდეს types, methods და properties-ებს runtime-ზე — თუნდაც ისეთებს, რომლებიც compile time-ზე უცნობი იყო. Attributes ამატებს დეკლარატიულ metadata-ს კოდს, რომელსაც tools და frameworks კითხულობენ (ხშირად reflection-ის მეშვეობით) ქცევის გამოსაწვევად. ერთად ისინი უძღვებენ .NET-ის framework-ის უმეტესი "ჯადოსნობის" (serialization, DI, ORMs, validation).
