Diligent and hardworking:
* Industrious
* Hardworking
* Energetic
* Motivated
* Ambitious
* Dedicated
* Assiduous
* Conscientious
* Persistent
* Active
Opposite in terms of effort:
* Productive
* Efficient
* Alert
* Vigilant
* Attentive
* Keen
* Enthusiastic
Opposite in terms of character:
* Proactive
* Driven
* Disciplined
* Responsible
* Reliable
* Self-motivated
More informal:
* Go-getter
* Hustler
* Workaholic (though this can be seen as a negative)
The best antonym for "lazy" depends on the context. If you're talking about someone who is simply not putting in effort, "hardworking" might be the best choice. If you're talking about someone who lacks motivation or is inactive, "energetic" might be more appropriate.