Have you tried recording the audio and playing it back on the same machine without sockets? As in, the recording side places audio in a buffer, which is then used by the playback side.

When you try that, does that sound choppy as well?

Streaming live audio over a network is not trivial. You need to match the audio clock rates at both ends of the connection, and you need to counteract any networking jitter. The easy fix for the last option is a larger receive buffer, which will then of course increase latency.