Triviality of vector bundles Let $X$ be a proper curve, not necessarily smooth nor reduced, and $E$ a vector bundle on $X$ of rank $r$. Assume we know that $H^0(X,E)\geq r$ and $H^0(X,E^{\vee})\geq r$, can we conclude that $E$ is trivial? Is there a cohomological criterion to decide whenever a vector bundle is trivial?

No, you cannot conclude that $E$ is trivial: take $X=\mathbb P^1_k$ and $E=\mathcal O_{\mathbb P^1 _k}(-1) \oplus \mathcal O_{\mathbb P^1 _k} (1)$.
The rank $2$ self-dual bundle $E$  is not trivial, even though $h^0(\mathbb P^1_k, E)=h^0(\mathbb P^1_k, \check {E})=2$.
EDIT
1) This example is probably the simplest one, but it can be varied in innumerable ways by  taking  sums $\mathcal O_X(-D) \oplus \mathcal O_X(D)$ of line bundles associated to a sufficiently ample effective divisors $D$ on a projective variety $X$ .   
2) There is  however no counterexample of rank one on a projective variety $X$:
If a line bundle $L$  and its dual bundle $\check L$ have each a non-trivial section $s\in \Gamma(X,L),\sigma \in \Gamma(X,\check L) $ , then the section $s\otimes \sigma \in \Gamma(X,L\otimes\check L )=\Gamma(X,\mathcal O)=k$ is a non-zero constant.
This  forces $s$ to also have no zero  and thus  shows that  $L$ is trivial.
