Hello
I would also try and see how many differences we are talking about in terms of the templates, as it might be ok if such items are small and minor differences to use Macros to hide / show the relevant web parts according to the query string value.
It's an option, but wouldn't be recommended for large amounts of differences as performance would have a bigger impact on this.
Another option is to use Multi Views in .Net and by default hide all until you know what to show for the parameters.
It all depends on the quantity of differences really.
Thanks
Ilesh