Yes. Use BigInteger. It's designed for this purpose. The numbers you are using won't fit in the primitive integral and can't even be represented precisely in the floating-point types1.
BigInteger m = BigInteger.Parse("374711027510012111075768211110475111691021051041057653548210911210211112250867 66690120741165250567278571217510410482757487");
BigInteger n = BigInteger.Parse("4956889911565576581818287977011111065876967103548749122901151091038910610511189");
var product = m * n;
Console.WriteLine(proudct);
1: Single-precision floating point can represent all integers between -2^24 and 2^24 exactly because it has a 23-bit explicit plus one implicit bit mantissa; after that it loses precision. As
2^24 = (2^10)^2.4 ~ (10^3)^2.4 ~ 10^7
we lose precision for some integers after approximately seven digits.
Similarly, double-precision floating point can represent all integers between -2^53 and 2^53 exactly because it has a 52-bit explicit plus one implicit bit mantissa; after that it loses precision. As
2^53 = (2^10)^5.3 ~ (10^3)^5.3 ~ 10^16
we lose precision for some integers after approximately sixteen digits.