 <p><strong>Suggestion #1:</strong> The simplest way should be using TCP. You mentioned your data size is large. Unless your data size is too huge, you should be fine using TCP. Ensure you make separate threads in C and Python for transmitting/receiving data over TCP.</p> <p><strong>Suggestion #2:</strong> Python supports wrappers over C. One popular wrapper is <strong>ctypes</strong> - <a href="http://docs.python.org/2/library/ctypes.html" rel="nofollow">http://docs.python.org/2/library/ctypes.html</a></p> <p>Assuming you are familiar with IPC between two C programs through shared-memory, you can write a C-wrapper for your python program which reads data from the shared memory.</p> <p>Also check the following diccussion which talks about IPC between python and C++: <a href="http://stackoverflow.com/questions/6915191/simple-ipc-between-c-and-python-cross-platform">Simple IPC between C++ and Python (cross platform)</a></p>