I've been doing the contracting thing, where the client hires me to extend their on-site team. Recruitment agencies call me, I have an intake over the phone with the client and then meet them face-to-face. So I don't recognize the things mentioned like "fixed-price contract", I just have an hourly rate. You can spend anything from a couple of months to a couple of years working for the same client.
In other words, you're contracting involves a "body for hire", which is a perfectly reasonable way to do contracting.
Another form of contracting is a traditional contract - you have to do X and produce Y deliverables in preferably a Z timeframe, which is more project oriented Traditional engineering companies typically do these - customer needs a product that does XYZ and with deliverables and milestones. Which can involve freelance work as well - you need to produce a document, say.
In these, there are "fixed price" contracts where you do the work and get $X for it. Then there's "Time and Materials" where you're compensated for time and expenses to get things done. The former is riskier on the company so they usually have higher margins (if the company thinks they can do it in 1 month, they'd bid 3 months for contingency), while the latter is lower risk, and thus lower margins.
If you're extending teams, that's just one form of work, but freelancing typically involves completed parcels of work.