<p>I want to talk to a flash server which uses RTMP, but I don't want to use Flash, but rather c# or java.</p>

<p>I was looking at Red5 but their client API seems to be a bit wobbly.</p>

<p>Does anyone have any other ideas?</p>

There's a python implementation of the RTMP protocol,
RTMPy
. Other than that and Red5, I don't know of any other RTMP client implementations. (Well, besides flash itself of course).
What flash server are you using? Some of them allow you to communicate with other protocols as well, such as text-based or XML-based, and those might be better to use than RTMP if your client is not flash-based.