The as operator is like a cast operation. However, if the conversion isn't possible, as returns null instead of raising an exception.
You can use the as operator to perform certain types of conversions between compatible reference types or nullable types.
Consider the following example:
expression as type
The code is equivalent to the following expression except that the expression variable is evaluated only one time.
expression is type ? (type)expression : (type)null
Note that the as operator performs only reference conversions, nullable conversions, and boxing conversions. The as operator can't perform other conversions, such as user-defined conversions, which should instead be performed by using cast expressions.
Refer:
as (C# Reference)