How to find change in the optimal choice with a utility function in general form? Suppose the utility function is represented as $U(x_1,x_2;I)$, where $I$ is the level of information the consumer possesses. 

How to find the change in the optimal choice of $x_1$ as price of $x_1$ changes with and also with respect to changes in Information? 

While I understand the procedure with a Cobb Douglas Utility function, I don't know how to work with general form. 

My take: 

The consumer maximises $U(x_1,x_2;I)$ subject to a budget constraint $px \leq Y$ where $p$ and $x$ are vectors and $Y$ is income. 

The optimal choice can be represented as $x_1^*(p,w;I)$ - Marshallian Demand. Now differentiating this wrt $p$ and $I$ would be the solution. 

Is my understanding correct?
It depends what you know about your utility function and the "space" of goods $x_1$ and $x_2$.

You ask in your question what the change of optimal choice is with respect to the parameter information.
This analysis is called comparative statics, and you can use a number of mathematical tools to achieve this. The most common are


The Implicit Function Theorem


If the space of goods in convex and everything nicely differentiable, quasi-concave etc. etc., then this is easiest. I will not discuss the theorem, you should work through it yourself (good references are in De La Fuente's book or in MWG).

First, what is the optimal choice for the actor? Since everything is differentiable, AND quasi-concavity implies that the first-order conditions characterize the optimum (this is important), you can derive the conditions for the optimal choice by the first order equations
$$ D_{x_1,x_2,I}U(x_1,x_2;I) = \mathbf{0}$$
where $D$ is simply the differential operator aka in your case the vector of $\frac{\partial U}{\partial x_i}$.

This characterizes the optimal choice. It is not yet "solved" as the form of $x_i=\ldots$, but this is often neither possible nor necessary. For example, maybe you don't really know what $U$ is except that it has certain properties, so you can never solve for $x$ explicitly. That is why we use the "implicit" function theorem.

Applying the Implicit Function Theorem allows you to calculate
$$\frac{\partial x_i}{\partial I}$$
simply by using the "ratios" of first-order conditions you derived above. 

Again, you need to carefully check some properties of the functions, so I will give you the formulas but urge you to check the literature.


Monotone comparative statics


As it turns out, we can do comparative statics in an even more general world than a convex space of goods with differentiable utility. 

Suppose we are only interested in "directions" of choice. That is, we care only about monotonicity. For example, the IFT does not work for discrete goods ("1 car", "2 cars", "3 cars") since the space is not convex. But the ideas should work similarly!

Doing optimization on these non-convex, and yet ordered sets it called lattice optimization. 

Now, we merely need to assume that $X$, the space of goods, is a lattice - a set where the possible combinations of $x_1$ and $x_2$ have a certain order, and that the information values $I$ constitute a partially ordered set.

Now, if we assume that the utility function is at least supermodular (think similar to concavity in this more general space), then we can use a similar result to the implicit function theorem, called Topkis's theorem to establish how $x_i$ changes as response to $I$.

But in fact, this is not even the most general case. Remember the difference of concavity and quasi-concavity? Well! Here, too, we can invoke quasi-supermodularity. This brings us in the word of Milgrom, P., and C. Shannon (1994): “Monotone Comparative Statics”.

In particular, they claim that this form of comparative statics is the most general, and in a sense, necessary and sufficient from of "optimal choice" and "comparative statics".
I found that a very good reference is the book by Xavier Vives.

Well, you asked for generality, so there you go.

Edit: If you are an undergrad, then perhaps just file this response away and I will say that, yes, your understanding of the problem also works. You can differentiate the demand function to see how it changes with respect to the parameter ;-)