If you want a 2-sample Welch t-test, here it is.
a = rnorm(50, 6, .9)
b = rnorm(55, 5, 1)
t.test(a,b)
Welch Two Sample t-test
data: a and b
t = 5.046, df = 102.573, p-value = 1.959e-06
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
0.6096795 1.3993312
sample estimates:
mean of x mean of y
5.867697 4.863191
Two-sided and Welch are defaults. Use parameters to pool or for one-sided alternatives.
If data are in a 'stacked' format, then it's like this:
all = c(a,b)
gp = as.factor(rep(1:2, times = c(50,55)))
t.test(all ~ gp)
Welch Two Sample t-test
data: all by gp
t = 5.046, df = 102.573, p-value = 1.959e-06
...
If you question normality (and 50ish is still a 'small' sample to you), then
you can do Mann-Whitney-Wilcoxon rank sum test for difference in medians.
wilcox.test(a, b)
Wilcoxon rank sum test with continuity correction
data: a and b
W = 2091, p-value = 4.417e-06
alternative hypothesis: true location shift is not equal to 0
wilcox.test(all ~ gp)
Wilcoxon rank sum test with continuity correction
data: all by gp
W = 2091, p-value = 4.417e-06
alternative hypothesis: true location shift is not equal to 0
Data display:
stripchart(all ~ gp, pch="|", ylim=c(0,3), col=c("blue","maroon"))

plot(density(a), col="blue", lwd=2, xlim=c(0,10), ylim=c(0,.5),
xlab="A (blue), B (maroon)",main="Density Estimators for A an B")
lines(density(b), col="maroon", lwd=2)

If you had something like a permutation test in mind, then
please give particulars; I'll look again in several hours.