Quick answer: Unreal Blueprint cast on spawned actor returning null when the class is C# (Verse-derived in UEFN, or other host language)? Cross-language cast paths have separate cases - use IsA or interfaces.
Spawned actor from a script. Blueprint cast to BP_MyActor fails because the actual class is the script's.
Use IsA
Class membership check; doesn't require the same UClass identity. Works across script boundaries.
Or use interface
Interfaces are language-agnostic. Both languages implement; consumers query via interface.
Avoid cross-language casts
If you find yourself fighting cross-language casts, refactor to interfaces. The right primitive.
“Class identity is per-language. Cross-language polymorphism uses interfaces.”
If your project mixes languages, plan the cross-language API explicitly. Interfaces beat casts.