What is the best way to imagine the difference between vectors and one-forms? I am studying the GR and reading the Schutz. 
He is defining the one-form as $\widetilde{p} = p_{\alpha}\widetilde{w}^{\alpha}$, and a vector  $\vec{A} = A^{\beta}\vec{e}_{\beta}$
such that 
$$\widetilde{p}(\vec{A}) = p_{\alpha}A^{\beta}{w}^{\alpha}(e_{\beta})= p_{\alpha}A^{\beta}\delta^{\alpha}_{\beta}$$
for  ${w}^{\alpha}(e_{\beta}) = \delta^{\alpha}_{\beta}$
The books define one-forms as functions that take vectors as their arguments. And I believe its a good definition but I am still confused.
For me, it seems that there's not much difference between the two of them. For instance, in Minkowski space, the component transformation between vectors and one-forms are just defined as
$$V_{\alpha} = \eta_{\alpha\beta}V^{\beta}$$ For instance if the component of a vector is $\vec{V} = (a,b,c,d)$, then its components in one-from is $\widetilde{V} = (-a,b,c,d,)$.
The interesting thing is that in Euclidian space says they are equal which is clear from the above expression.
Let me express what I understand. 
One-forms are like vectors but with different components. For instance in general we define a vector in the form of $\vec{A} = A^{\beta}\vec{e}_{\beta}$. So by using the basis vectors $\vec{e}_{\beta}$ we create new basis vectors such that $\widetilde{w}^{\alpha}$. So one-forms are just vectors but written on another basis? 
 A: To keep it simple, think of vectors (contravariant vectors) as column matrices and think of one-forms (covariant vectors) as row matrices (the dual space), and the inner product as a multiplication between row matrices and column matrices.
A: Introducing the dual space of linear maps allows you to work with co- and contra-variant indices even without a metric being defined. As Charles Francis answered earlier, in that case column and row vectors are a nice way to think about things.
On the other hand, as it seems you may have noticed, in a metric space with inner product there is really no need to introduce the dual space. (Basically due to the canonical isomorphism between an inner product space and its dual.)
For instance, consider a vector space $V$ with a basis $e_i$, so an arbitrary vector in components is $a = a^i e_i$ with real scalar components $a^i$. Suppose there is a dot (inner) product on this space, written $a \cdot b$ for vectors $a,b$. The metric coefficients $$g_{ij} = e_i \cdot e_j$$ are the dot products of the basis elements. By definition of the inner product, the matrix of coefficients $g_{ij}$ is invertible, with matrix inverse $g^{ij}$. Expanding vectors $a,b$ in terms of coefficients, using linearity of the metric, one then has $$ a \cdot b = a^i \, b^j \, g_{ij}$$ as usual.
Now, this is where I will differ from the standard by not introducing a dual space.
Theorem. There exists a basis $e^i$ (note the upper index distinguishes this from the old basis $e_i$) of vectors in $V$ such that
$$ e^i \cdot e_j = \delta^i_j . $$
In particular, $e^i = g^{ij}e_j$. We call $e_i$ and $e^i$ a pair of reciprocal vector bases.
Every basis has a reciprocal basis. There is no such thing as a reciprocal vector to an individual vector. Which basis set has the upper vs lower index is unimportant, they are both sets of regular old vectors.
Now the vector $a = a^i \, e_i = a_i \, e^i$ can be expanded equally well in components (given by $a^i = a \cdot e^i$) or reciprocal components (given by $a_i = a \cdot e_i$).  Consequently, the inner product evaluates to
$$ a \cdot b = a^i \, b_j \, (e^i \cdot e_j) = a^i b_i .$$
By now hopefully you can see that this will completely recreate all benefits of introducing the dual space, but while working entirely with vectors. Personally I find this formalism very useful and intuitive --- but unfortunately it is not standard in the literature. That's a pity, because, there is always a metric in GR, so this way of doing things can provide a lot of simplifications.
One example of a fun fact when you translate this approach into GR: The reciprocal basis to the coordinate basis fields $\partial/\partial x^i$ is the precisely the set of vector fields which are gradients $\nabla x^i$ of the coordinate functions $x^i$ --- these gradients correspond to the one-forms usually called $dx^i$.
In summary: If there is no inner product (aka metric) you can think of column and row tuples. If there is a metric, you only need to think about vectors (as directed arrows), and can think of the co- and contra-variant versions as two different basis representations of the same vector.
A: For physical intuition, it can be helpful to think of vectors as describing velocities through a space (geometrically represented as an arrow), and one-forms as describing the rate at which a quantity varies across the space (for a two-dimensional space and a single-valued quantity, this can be geometrically represented as a small plane angled with respect to the space).
The product of a vector and a one-form is the slope of the one-form’s plane in the direction of the velocity’s arrow, representing the rate at which the quantity changes as a point moves with the velocity encoded by the vector.
This geometric explanation also gives intuition for why vectors transform contravariantly with respect to coordinate changes, but one-forms transform covariantly: if we increase the size of the unit length, the number of distance units traveled per time for a given velocity becomes smaller, but the rate at which units of the external quantity change with respect to unit changes of position in the space becomes larger.
For example, speeds measured in miles per hour have a lower number than if the same speed was reported in kilometers per hour, but the slope of any given hill is represented by a greater number as feet per mile than as feet per kilometer.
A: To add one more point of view, think about how the vector is defined in differential geometry (GR).
The vector at point P can be defined  as an equivalence class of curves going through point P given by the relations
$$x^i(\gamma_1(0))=x^i(\gamma_2(0))$$
$$\left.\frac{d}{dt}x^i(\gamma_1(t))\right|_{t=0}=\left.\frac{d}{dt}x^i(\gamma_2(t))\right|_{t=0}$$
that hold for any two curves of the same equivalence class ($x^i$ being any coordinate system).
Or in non-mathematical language: vector is measure of how quickly and in what direction is the curve moving away from point $P$. 
So vector is very natural concept arising directly from the fact that you can "draw" curves on a manifold. 
Having vector space at point P, you can then define dual space as space of linear operators of original vector space called 1-forms. This is also vector space, but it is different vector space and you cannot identify these two in any natural way, unless some additional structure is introduced. That structure is metric, which you can use to define canonical isomorphism between original vector space and 1-forms by $v\rightarrow g(.,v)$, where $v$ is some vector. That is - the 1-form $\tilde{v}$ which is to be identified with vector $v$ is such 1-form, that has the same result when acting on arbitrary vector $w$ as $g(v,w)$.
Because now you have direct identification between $v$ and $\tilde{v}$ you can indeed compute components of $\tilde{v}$ from $v$ and see both entities it as just one vector in different coordinates. However, one forms and vectors do not need this identification. They arise directly from more primitive concept of manifold, where there is no identification. And because they arise from more primitive concept and not just as two identical vector spaces, they are - especially in physics - more suited for different roles. 
So when we talk in GR about movement of particle, it is natural to see its 4-velocity as ordinary vector, because movement of particle is given by its worldline which directly defines its own tangent vector. When arguing about 4-velocity you can use your intuition directly, because movement of particle is indeed best characterized by its worldline and its tangent vectors. 
On the other hand, when you have gradient of a function, it is more natural to see it is operator and not as a vector. The gradient is supposed to tell you how much does function changes in given direction. So you supply direction (vector) and get the change. Quite natural. And more important - no need for any metric! The change is just value of the function at the tip of the vector minus the value of the function at the tail of the vector. No distances or any other metric induced concepts are needed. 
But when you see it as a vector, then the vector tells you the direction in which the function changes the most. Seemingly, you lost all the information about any other direction. This is of course not so, but to get the change in another direction suddenly you need to bring metric in. You need to compute scalar product of two vectors, where metric hides. Even though the change itself has nothing to do with any metric. In fact, what the scalar product does is transforming your vector gradient back to 1-form which it then applies to the vector. Quite unnatural to think about it that way.
A: 1) Given vectors $v$ in a vector space $V$ a dual vector is simply a function $f$ such that $f(v)$ is a scalar. It is easy to see that the set of these functions forms a vector space itself, $V^*$, called the space dual to $V$. Addition etc are defined as usual $(f+g)(v)=f(v)+g(v)$ etc.
2) Now, if $V^*$ is a vector space, one can find a basis such that any $\tilde{w}\in V^*=w_a \tilde{e}^a$, where $w_a$ are numbers, and $\tilde{e}^a$ are dual vectors i.e. functions. In fact, dual vectors are vectors themselves, but behave differently under transformations.
3) Being linear transformations (from $V$ to scalars), they can be completely specified by their action on basis vectors in $V$, call them $\hat{e}_a$. We then define the functions as $$\tilde{e}^a(\hat{e}_b)=\delta^a_b$$ and the composite action follows $$\tilde{w}(\vec{v})=w_a v^b\delta^a_b=w_av^a$$ and this is a scalar.
4) The above says that the action of dual vectors on vectors can be given only terms of their components. In practice, this amounts to writing one as a row vector and one as a column-the product is a number. Note also that this is an invertible correspondence-we can equally well call $V$ to be the dual space to $V^*$. In summary, $\tilde{w}(\vec{v})=w_av^a=\vec{v}(\tilde{w})$
5) If the space has a metric, we can do better. The metric defines the inner product $g_{ab}=\vec{e}_a\cdot\vec{e}_b$, and it is defined so that given $\vec{v}\in V, \tilde{w}\in V^*$, $$g(\vec{v},\tilde{w})=\tilde{w}(\vec{v})=\vec{v}(\tilde{w})$$, and  thus we can define it as the rule $$g(\vec{v},\cdot)\equiv\tilde{v}(\cdot)$$
In other words, the metric has introduced a natural correspondence between a vector $\vec{v}$ and its dual $\tilde{v}$. They're both machines to act on duals and vectors respectively to churn out numbers.
6) Finally, as $w_av^a$ must be a scalar, it is clear that the components $w_a$ transform in an inverse sense to $v^a$. For an orthogonal transformation, like rotation, this simply means transform under the transpose. This is conveniently written as a left multiplication with the row matrix(instead of the transpose multiplying a column of $w_a$). This is also how you take inner products.
