In my C# application I need to create a .resx file of strings customized for every customer.
What I want to do is avoid recompiling the entire project every time I have
You could put the needed resources into a separate DLL (one for each customer), then extract the resources dynamically using Reflection:
Assembly ass = Assembly.LoadFromFile("customer1.dll");
string s = ass.GetManifestResource("string1");
I may have the syntax wrong - it's early. One potential caveat here: accessing a DLL through Reflection will lock the DLL file for a length of time, which may block you from updating or replacing the DLL on the client's machine.