Thailand has been buffeted by political instability for years, largely a battle between supporters of the military and ousted former PM Thaksin Shinawatra.
After seizing power the army promised to restore order and democracy, but has repeatedly postponed the vote.
Critics say a new constitution the army introduced will ensure it remains influential whatever the outcome.
Turnout is expected to be high for this first election since 2011.
More than seven million people aged between 18-26 are eligible to vote for the first time and could be key to victory, so all parties have been keen to court their vote.
On the eve of the election, Thailand’s King Maha Vajiralongkorn issued a statement urging “peace and order” during the voting process.
The statement, which was featured on national television on Saturday evening, urged voters to “support the good people”.
The election is primarily a contest between pro-military parties and allies of Mr Thaksin.
He was ousted in a coup in 2006 and lives in self-imposed exile to avoid a conviction for abuse of power. But he still has a significant following, largely among rural and less affluent voters.
Parties loyal to Mr Thaksin have won every election since 2001, and the BBC’s South East Asia correspondent Jonathan Head says crippling this movement has been a central – if unofficial – objective of the military.
Pheu Thai (For Thais) is the leading Thaksin-loyal party campaigning this time.
General Prayuth Chan-ocha, who led the coup which ousted Mr Thaksin’s sister Yingluck Shinawatra in 2014, has been nominated as the only prime ministerial candidate of the newly formed pro-military Palang Pracha Rath Party (PPRP).
Among other prominent parties are the Democrats, led by former prime minister Abhisit Vejjajiva, and the new Future Forward party, led by a young telecoms billionaire, Thanatorn Juangroongruangkit.
At the time of the coup, the military said it wanted to restore order and stability and prevent the street protests which have broken out repeatedly over the years.
But the junta has been accused of taking an authoritarian approach to power, strictly controlling the media and arbitrarily using laws like lese majeste – which prohibits any criticism of the military – to silence opponents.
It also introduced a constitution – approved by a referendum – which its critics say is designed to ensure it remains central in Thai politics.
Voters on Sunday will be electing 500 members of the lower house of parliament. But under the constitution, a 250-seat senate has been appointed by the military.
The two houses will together elect a prime minister – a candidate only needs half the votes plus one to win.
So the military’s preferred candidate – Gen Prayuth – would in theory only need 126 lower house votes to take office. The governing party or coalition can also appoint a non-MP as prime minister.
The new constitution also imposes a limit on the number of seats any one party can take, regardless of the number of votes won, and any future government is constitutionally bound to follow the military’s 20-year plan for Thailand.
Voting will take place at more than 93,000 polling stations from 08:00 local time (01:00 GMT) until 17:00.
Preliminary unofficial results will emerge within hours, but correspondents say it will take some time for the future direction of Thailand to become clear, as parties negotiate deals and coalitions.