The 24-year-old becomes Sean Dyche's first signing of the January transfer window and has joined the club on a three-and-a-half year deal.
Barnes, who will wear shirt number 30 at Turf Moor, goes straight into the Clarets' squad for Saturday's Championship game at Yeovil.
Dyche said: "Ashley is a robust, hard-working centre-forward with an eye for goal and he is someone we have known about and monitored for a while now.
"We did our homework and he is definitely someone who wants to work hard to continue as a player.
"I can assure you Ashley is not here just to supplement the group and support the front two, but to make sure we have a real challenge up front.
"I know he is that type of character and he is willing to earn the right to play.
"We see him as a strong player coming in with a will and desire to improve and affect football matches, as strikers do by scoring goals."
The striker, who has scored six goals in 24 appearances for Brighton this season, qualifies to represent Austria courtesy of his grandmother and has been called up to represent their Under-20 team.
Barnes, who joined Brighton in 2010, began his career in non-league football with Paulton Rovers in the Southern League before joining Plymouth Argyle in 2007 - and has also been on loan at Torquay United.