Can root and intermediate CAs use different asymmetric ciphers and key sizes? For example, could a root CA use RSA-4096, one intermediate CA use RSA-2048, and another use ECDSA-256 (DH19)?
For example, could a root CA use RSA-4096, one intermediate CA use
  RSA-2048, and another use ECDSA-256 (DH19)?


If you use the standard certificate verification algorithm described in RFC 5280 (section 6) that is no problem. Using that algorithm you have a working_public_key_algorithm, working_public_key and working_public_key_parameters which get updated as the as the certificate path is being processed (always after the current certificate was processed) and they're initialized with the root algorithm / public key / parameters.

However, practically you will rarely find ECDSA certificates issued below RSA roots and RSA certificates issued below ECDSA roots. Apparently this is mostly for historical reasons as clients used to indicate what they support (RSA vs ECDSA) using their TLS cipher suite, ie when it contains *RSA_* they only support RSA-based certificates (which needs pure chains obviously) and analogously for ECDSA.