A) If I have a resource to be used from a user control, which one is more good performance wise..?
To include it in the user control scope itself or refer the resource from app.xaml..?
B) Now we have all the 100s of styles referred from appl.xaml. Will moving them to their respective user controls be worth the effort..?
Adding an application resources gives you better reuse, but it adds complexity because it's not immediately clear which pages use a given resource.
Pro Silverlight 4 in C# By Matthew MacDonald
Overall it depends on level of reusing Resources in scope of application. If resource is widely reused - then place it in application resources. If you're going to use style only for one UserControl and do not use it in other places - then placing this style within app.xaml will be overabundant. For my opinion even if resource is used only for 2-3 pages it's better to place it in each page.
From performance point of view - I don't think that you've got such amount of resources that could hurt performance.
Below are articles that could help you to improve loading time:
Update:
MSDN helps in many situations) After reading this article, you'll get answers for many questions: Resource Dictionaries
Article that describes Resources performance issues: Silverlight XAML Performance Problem and Shared Resources.