The simplest solution is to use command line arguments when starting the other application. See
Command-Line Arguments (C# Programming Guide) | Microsoft Docs[
^].
For more complex situtions you can use IPC (Inter Process Communication). Because there are many different IPC methods, I can't suggest one without knowing what you want to do (when and how often commands should be passed and the amount of data that should be passed).
There are some articles here at CodeProject about IPC:
Search: "c# ipc"[
^]