- Finish the work within tonight.
- Finish the work by tonight.
Are they both correct? The meaning of the two sentences might be different.
English Language & Usage Stack Exchange is a question and answer site for linguists, etymologists, and serious English language enthusiasts. It only takes a minute to sign up.Sign up to join this community
By tonight means by the end of the current day.
Within tonight is not an idiomatic phrase. It could be understood to mean during the current night, but for that we would normally say by [the] morning.
If you are a beginner in English you might find https://ell.stackexchange.com/questions more helpful.