Technically, Beyonce is the better singer. Christina is very hit or miss, especially live. Now, Beyonce is very polished and rehearsed, but her vocals always slay. Christina just yells. When she isn't yelling and doing sloppy runs, she's awesome, but she always tries to go for the gusto and fails most times in my opinion.
And I never said Beyonce was the best vocalist of our generation, I said I think Beyonce is a better vocalist than Christina because she has consistency.