In written English, which way is a better or correct way to say? Or any difference?
- Participants are less than 40-year-old.
- Participants are under 40 years of age.
- Participants are younger than 40-year-old.
"40-year-old" is often used as a noun, as in "a 40-year-old", so the first and last are awkward. The second is correct and could also be
Participants are under 40 years old.
Participants are less than 40. Participants are younger than 40.
This would probably be how I would say it.
Both of "less than 40-year-old" and "younger than 40-year-old" are incorrect. If you want to retain the "years old" concept, you would just say "less/younger than 40". "Participants are under 40 years of age." is correct, but clunky - I would say "Participants are under 40 years old." instead.
Dashes ("40-year-old") are generally only used as a "compound" noun when identifying a person - "I have two children, a 3-year-old and a 5-year-old."