It may be worthwhile setting up a priority list eg:
priority-list 1 protocol ip high tcp 1494
and setting as a lower priority things like email and printing (if such things are accessed outside of Citrix). I think this may be mentioned in the doco xs4citrix has provided a link for. Speaking of printing, is that done a lot? If so, something like UniPrint or EOL Universal Printer Driver may be worthwhile testing (you can get a free 30 day trial from their websites) even if you're currently using the Citrix UPD.
Also worthwhile making sure that audio/com ports aren't mapped if not required, and also video settings are low if possible. Oh, and enable caching of bitmaps.
If the clients have decent pcs, then you may also want to try using higher compression than the default.
Also, if you currently don't track what's happening on your wan links and don't have any utilities,
is a free system you can setup to provide live graphs of your traffic - might help identify issues......
Finally, another registry setting that might help:
;KeepAlives in order to make the disconnect/reconnect mechanism work
;appropriately. In environments where the TCP/IP network has high
;latency, modifying the operation of the NT TCP/IP stack can improve
;TCP-based ICA sessions. For more information on configurable TCP/IP
;parameters in Windows, see the Microsoft Knowledge Base article
;Q120642, or CTX708444: How to Set TCP Keep Alives so TCP/IP
;To ensure that a host server is quickly aware of dropped sessions, the
;two TCP registry settings listed below can be modified with the following
;moderately aggressive values:
;Key: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet;Services\Tcpip\Parameters
;Value: KeepAliveTime REG_DWORD: 0000ea60
;Value: KeepAliveInterval REG_DWORD: 000003e8
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
"KeepAliveTime"=dword:0000ea60
"KeepAliveInterval"=dword:000003e8
Cheers