Flask async job/task submit to Celery or Jenkins
Couple of points below to consider to compare between celery and jenkins.

Celery is specifically designed and built for running resource intensive tasks in background whereas jenkins is a more general tool for automation.
jenkins is built on java so native integration is there although plugins are available whereas celery is built with python so you can directly program the tasks in python and send it to celery or just call your shell tasks from python.
Message queuing - Again jenkins does not have builtin support for message brokers so queuing might be difficult for you. Celery uses rabbitmq as default to queue the tasks so your tasks never gets lost.
Celery also provide simple callbacks so when task is completed you can run some function after it.
Now if you ask about cpu comsumption then celery is not at all heavy
I have a flask application where i submit tasks to celery(worker) to execute it. so that i can get the webpage back after submitting. Can i achieve same if i submit the task to Jenkins instead? Just wanted an opinion why would i use celery when i can ask Jenkins to schedule/execute the job through Jenkins API ? still get my webpage back. I may be wrong with my approach  but anyone who can shed light on this would really appreciate. 
The Main aim is that user submits the form which actually is task to execute and after hitting submit task detachs from web , reloads the form. Meanwhile task runs in background which celery does it efficiently but can it be done via jenkins.
Thanks