Use the way which better suits your needs. If you don't need much flexibility then use the first approach. But as soon as SomeClass
dependencies will grow, you might want to use more flexible approaches like NamedParameter
.
One more option is using named component registrations like
builder.RegisterInstance(config).Named<Config>("DefaultConfig");
builder.Register((c, p) => new SomeClass(p.Named<Config>("DefaultConfig")))
.As<ISomeClass>();
Read more about those the topic from Resolve Parameters documentation
In any case the best practice would be to cover all your registrations by unit tests as well to avoid unexpected results.