Clarify the distinctions between the 'is' and 'as' keywords in C#, essential for type checking and casting.