if 2 random variables have exactly same mean and variance If two continuous random variables have exactly the same expected value and variance, do they always have the same distribution?
 A: In short: No. There are several properties of a probability distribution that need not affect its mean and variance, but do determine its shape.
Skew & Kurtosis
For example, a Poisson distribution with $\lambda = 1$ has expected value $\lambda = 1$ and variance $\lambda = 1$. So does a normal distribution with $\mu = 1$ and $\sigma^2 = 1$. 
An example with two continuous distributions: Take an exponential distribution with $\lambda = 1$, such that its variance is also $\lambda^{-2} = \frac{1}{1^2} = 1$ and compare it to a normal distribution with $\mu = 1$ and $\sigma^2 = 1$. These have the same expected value and the same variance, but look nothing alike and will produce very different numbers:

As to what is different from these distributions with equal mean and variance: Consider the skew and excess kurtosis of the distributions. These are both $0$ for the normal distribution, but not for the exponential distribution.  
Multimodality
As @Glen_b pointed out, skew and kurtosis are not the only things to take into consideration. Another example is multimodality: A continuous distribution with multiple modes can have the same mean and variance as a distribution with a single mode, while clearly they are not identically distributed.  
For example, consider a mixture of two normal distributions, each with $\sigma^2 = 1$, but their means are $2$ and $-2$, respectively. The resulting mixture will have a mean of $\mu=0$ and a variance of $\sigma^2 = 5$, which is the same expectation and variance as a single normal distribution $\mathcal{N}(0, 5)$:  

If you want to try for yourself, this is fairly easy to demonstrate in R:
n <- 10e6             # some arbitrarily large sample size
y1 <- rnorm(n, -2, 1) # mixture component 1
y2 <- rnorm(n, 2, 1)  # mixture component 2
y.mixture <- c(y1, y2)
mean(y.mixture)
var(y.mixture)

Versus:
y.single <- rnorm(10e6, 0, sqrt(5)) # R parameterizes with sd instead of var
mean(y.single)
var(y.single)

