We are a bit lost here. We need to make our app installable on a network with 80+ Citrix servers. Although our app is 100% valid and working .NET, we've experienced some (for us weird) behavior:
A Citrix environment is for practical purposes the same as Remote Desktop Services (used to be Terminal Services) environment.
Microsoft has published Remote Desktop Services Programming Guidelines on MSDN, which is a good starting point to get a feel for what you need to be thinking about.
Microsoft UK Application Development Consulting group has a guide on Developing .NET applications for deployment on Terminal Services or Citrix , which is more performance focused.
You can get free development licenses for Citrix for 12 months, which may be useful for testing.
We've done some deployment to Citrix, and the thing that caught us out must was the Citrix admins fiddling with the permissions for their users. They sometimes broke major parts of Windows, in which case the only thing you can do is log lots :)
good luck!