It is possible to call native code, including native COBOL code, dynamically with a CALL statement instead of using a Platform Invoke. In this case, the native code should be packaged as a .dll (for Windows .NET Framework or .NET Core) or as a self-contained callable shared objects (for Linux .NET Core) and then deployed directly with the application.