I am using Unity framework for creating and managing instances in my application and I have doubt with respect to performance. Will having too registration statements in the configuration affect my application's launch time? I have registered nearly 89 types through the config file.
As an additional note, most of the types registered are instantiated only after launch, based on some user actions.
With regards to ...
Will having too registration statements in the configuration affect my application's launch time?
Short answer is "it is very unlikely".
I don't think using Unity container "mindfully" would have an negative effect on the performance of your application. The reason I said "mindfully" is more or less for larger scale applications where there are lot of instances need to be registered and resolved at various resolutions. For example, you might not want the container to carry loads of registration where you want them to registered dynamically, or you want them to be registered if the container does not container registration etc.
Having large number of registrations keep those entries in memory (like dictionary), and won't have a much effect on the performance of the container. It is just a look up table so Unity builder strategies will resolve those instance based on the registration. The issue is if you resolve lot of instances and keep in memory upfront, which you mentioned you already avoiding (see my last paragraph..).
It is a misconception that Unity is slower DI container. It has rich set of features, it is well placed among some of the other better containers. It is not the fastest and it is not the slowest either.
With regards to "As an additional note, most of the types registered are instantiated only after launch, based on some user actions." I believe this is actually good thing because you only create instance whenever they need. This beneficial from memory consumption point of view - you won't carry large amount of instances in memory.