The pieces of information I get online are sometimes confusing. Someone says MILP problems are NP-hard, and somewhere else I found the claim that MILP problems are NP-complete. Can someone please clarify it?
For an introduction to complexity theory, see this answer.
A problem is NP-complete if it is both in NP and it is NP-hard. Only decision problems are in NP. Hence, if one considers MILP as a decision or feasibility problem, it is correct to say that MILP is NP-complete as well as NP-hard. Maximization and minimization problems are not decision problems (although they can easily be transformed into decision problems), so if one considers MILP as an optimization problem, MILP is not NP-complete but is NP-hard.
A very good discussion of the complexity of MILP is given in the paper1 and the reference within2. Based on the discussion in section $3.2$ MILP is NP-hard.
(1) Bulut, Aykut, and Ted K. Ralphs. On the complexity of inverse mixed integer linear optimization. Tech. rep. COR@ L Laboratory Report 15T-001-R3, Lehigh University, 2015 (cit. on p. 147).
(2) Papadimitriou, Christos H., and Mihalis Yannakakis. "The complexity of facets (and some facets of complexity)." Journal of Computer and System Sciences 28.2 (1984): 244-259.