Reflection membolehkan program memeriksa dan memanipulasi types, methods, dan properties pada masa runtime — walaupun yang tidak diketahui pada masa penyusunan. Attributes melampirkan metadata deklaratif kepada kod yang dibaca oleh alat dan framework (selalunya melalui reflection) untuk memacu tingkah laku. Bersama-sama mereka menggerakkan kebanyakan "keajaiban" framework .NET (serialization, DI, ORMs, validation).
