From bug 5504:
>When a ThinLinc Client is open and (partially) hidden behind other
>applications, opening a ThinLinc Client configuration file will first focus and
>raise the existing ThinLinc Client above other windows and then start a new
>client instance with the desired configuration.
>If the ThinLinc Client is on another desktop, OS X will move to that desktop
>and start the new client there instead of on the desktop you're currently at.
The issue is more involved than that. Apparently, when you "open a file" in OS X, it will normally focus the application. In this context, "focus" apparently means "switch to the desktop where the application was last launched from". This is regardless of whether the application is actually running on another desktop or not. In other words, if you:
1. Launches client from desktop 1.
2. Launches another instance from desktop 2, then quits that instance.
3. Launches another instance with "open foo.tlclient"
...then it will work correctly (client launches from desktop 2, even though the only instance is running on desktop 1), since the last client was launched from desktop 2.
Also note that you can get the correct behaviour with "open -g", regardless of which desktop was the last one.