I use a Python script to read the shared memory and generate JSON with this information, then a web page using this JSON is overlaid using OBS, and this way we transmit races on YouTube.
I don't know C#, but it should work similarly. This also means you definitely don't need to use the same language to create and to consume the information.
Here is how it looks like: https://youtu.be/ijSL8uN8cIw?t=5582
If you want to read about a public project that uses this strategy, here is the repository link:
https://gitlab.com/winzarten/SecondMonitor
I don't know C#, but it should work similarly. This also means you definitely don't need to use the same language to create and to consume the information.