You're both right. There is no hard line between a contractor and a consultant - and you have highly-paid, highly-skilled people who are called either, or both.
This is part of how bad actors in our industry get away with the shenanigans they do. Companies that provide third-rate warm-body programmers at starvation wages call themselves consultancies, call their wage-slaves consultants, and try to blend in with the rest who are benign or good actors in the system.
Sometimes you bring in talent via contract because you don't have the ability internally, or you don't have enough of a need to justify a full-time hire. Other times you bring them in because they're cheap, abusive, but give you arms-length deniability.
large companies hire (generally second-rate) computer programmers the same way. except instead of temps they're called 'contractors'.