Outsourcing involves hiring an external company to handle specific tasks or projects, while non-outsourcing means that company employees handle all tasks in-house. The key difference is whether external professionals are involved in completing the work.