Yes, pass the constructor arguments in an instance of an anonymous type; the property names must match the constructor parameter names:
IColor desiredColor = //whatever
int desiredNumber = //whatever else
IFoo foo = container.Resolve<IFoo>(new { c = desiredColor, somenumber = desiredArgumentValue });
If you are using an older version of C# that does not support anonymous types (or even if you're not), you can do the same with a dictionary:
IColor desiredColor = //whatever
int desiredNumber = //whatever
Dictionary<string, object> arguments = new Dictionary<string, object>();
arguments.Add("c", desiredColor);
arguments.Add("somenumber", desiredNumber);
IFoo foo = container.Resolve<IFoo>(arguments);