Boxing è la conversione di un tipo valore (come int) in un tipo riferimento (object) — avvolgendolo in un oggetto nello heap. Unboxing è l'operazione inversa (estraendo il valore indietro). Entrambi hanno un costo di performance (allocazione nello heap, copia), e comprenderli ti aiuta a evitare overhead inutili.
