Real Madrid beat Barcelona, into Cup final