Nullable type

Nullable types are value types that can take null as value. The default value of it a nullable type is null.

int? x = null;     //no value

Dynamic type

dynamic type is a static type, but in most cases, type ‘dynamic’ behaves like it has type object. dynamic bypasses static type checking - variables of type dynamic are compiled into variables of type object. Therefore, type dynamic exists only at compile time, not at run time

dynamic dx = 10;
dynamic dy = "quick brown fox jumped over the lazy dog";